作者BattleRoyale (翔燄)
看板EE_DSnP
標題[問題] debug訊息中的New Block
時間Tue Apr 29 17:55:12 2008
在測試./MemTest.debug中
我做了以下兩個指令:
mtr 100
mtn 5 -a 3
---
顯示訊息如下:
mtest> mtn 5 -a 3
Calling allocArr...(40)
Calling MemMgr::getMem...(40)
Memory acquired... 0x80582c8
Calling allocArr...(40)
Calling MemMgr::getMem...(40)
Memory acquired... 0x80582f0 //2f0和2c8差40
Calling allocArr...(40)
Calling MemMgr::getMem...(40)
Recycling 0x8058318 to _recycleList[1] //318和2f0差40
New MemBlock... 0x80583b8
//3b8和318差160
Memory acquired... 0x80583d0
//3d0和3b8差24
Calling allocArr...(40)
Calling MemMgr::getMem...(40)
Memory acquired... 0x80583f8 //3f8和3d0差40
Calling allocArr...(40)
Calling MemMgr::getMem...(40)
Recycling 0x8058420 to _recycleList[1] //420和3f8差40
New MemBlock... 0x8058438
//438和420差24
Memory acquired... 0x8058450
//450和438差24
---
黃色的部份我始終不懂為什麼會有160、24bytes等差距.....
如果是NewBlock的話 那第一個acquire到的memory不應該會跟NewBlock的位置重疊嗎
不好意思麻煩教授指示一下了
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.4.235
1F:推 ric2k1:New MemBlock 印的是 MemBlock* _activeBlock, 04/29 21:07
2F:→ ric2k1:而 Memory acquired是MemTestObj*,兩者本來就沒有一定關係 04/29 21:07