[問題] 有關記憶體使用
我想承之前問的memory leak那篇中再問一個問題~
之前教授說過
推 ric2k1:"doesn't seem to saturate" 通常是你的程式有迴圈不斷的在
→ ric2k1:吃記憶體。當記憶體用量超過實體記憶體的容量時,系統會
→ ric2k1:開啟硬碟來做 swap space,也就是將一些 least recently
→ ric2k1:used memory space swap 到硬碟之中,這種現象叫 thrashing
→ ric2k1:當你的系統在做 thrashing 的時候,你可以想像把硬碟當
→ ric2k1:記憶體執行起來會有多慢,慢到一定程度之後,你就會覺得
→ ric2k1:整個系統當掉了...
我這次寫完memMgr之後就想說寫一個簡單的memMgr來用在自己的專題上面
不過我想寫得只是一個簡單的版本
預先丟出大量的記憶體 之後再去跟預先丟出的記憶體拿資料
至於丟出的記憶體會以某個myObj為單位
先存在memMgr的成員_memBlock裡頭
不過我在決定一個_memBlock要有幾個單位的myObj的時候
(也就是_memBlock的size)
一直抓不到夠大又不會太大的值||||
就是我可能打了某個過大的數值之後
系統就開始變慢了然後就當機了
感覺跟上面老師推文說得狀況很像
不知道c++有沒有什麼辦法偵測實體記憶體的狀態呢
有多少我用掉了多少之類的~
謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.4.199
推
11/27 21:33, , 1F
11/27 21:33, 1F
→
11/27 23:46, , 2F
11/27 23:46, 2F
→
11/27 23:47, , 3F
11/27 23:47, 3F
→
11/27 23:47, , 4F
11/27 23:47, 4F