記憶體控制理解 個人

2021-07-02 03:37:40 字數 468 閱讀 1132

結論:要有系統整體的概念 你單獨乙個物件處理解決不了什麼問題 

記憶體不是不管,是要從設計上考慮清楚,而不是精細到每個微觀的地方去管,記憶體管理在大一點的系統中,一定要分層管理。一定要盡量做到, 某一大件任務完成後,內部不管有什麼問題,內容都不會出錯就行了。 

比方說,作業系統就不會操心你乙個使用者程序有沒有記憶體洩露. 大不了把程序殺掉一了百了. 作業系統絕對不會乙個個 shared_ptr 去釋放。

設計的框架不解決這個問題(記憶體分層隔離) 隨便乙個丟出去。。絕對死

另外把乙個龐大的工程細化到一大堆平級的微觀顆粒去管理,無論你在微觀層面做的如何健壯都是不夠的 

純 malloc free的粒度控制 太低端了。

c++ 那些東西就是加強微觀層面的健壯 治標不治本 沒辦法治本,只能做限制 。 

語言本身就有自己的問題,要規避 會用才能治本。 

c犯錯的機率小一點而已 ,c++犯錯的機會大,尤其是覺得自己懂得

TCP擁塞控制個人理解

常規的幾個概念如 慢啟動 指數增加 擁塞避免 線性增加 慢啟動閾值 sstresh 不說了,可以看下其他部落格。快速重傳 即收到3個冗餘ack馬上重新傳送該資料報,而不是等待該資料報超時再重傳。栗子 傳送端傳送1,2,3,4,5,6,7。其中4丟包了,接收端收到1,2,3,雙方都很滿意。然後接收端收...

個人對記憶體洩漏和記憶體溢位的理解

記憶體洩漏 從語義上講就是記憶體外露了的部分,跟傷口一樣,那麼就被細菌覆蓋,我們要及時把它 就應該去除細菌貼上邦迪,把傷口藏起來,就相當於釋放記憶體,讓壞蟲子走開,不讓它們占有不該占有的東西。編完了,來看下實際解釋 memory leak,是指程式在申請記憶體後,無法釋放已申請的記憶體空間,一次記憶...

linux記憶體管理模組引數的個人理解

linux記憶體管理模組引數的個人理解 先上乙個引數圖 total 總共有多少記憶體 used 用了多少記憶體 這裡的記憶體不僅包括真正在用的,還包括給應用程式預留的,這部分空間有一部分其實等於沒用,因為它是預留的,別的程式記憶體不夠它照樣得把這部分分給人家t.t,但很新手一看used就瞬間緊張了。...