作者ric2k1 (Ric)
看板EE_DSnP
标题Re: [问题] MemBlock的问题
时间Fri Dec 15 07:37:57 2006
请看清楚题目....
1. mtr without parameter --> MemBlock size remains unchanged (page 3 line 15)
2. 当然是 "size跟原来一样,但接在後面".
否则 MemBlock::_nextBlock 要干嘛?
而且如果 resize memory block 且将 data copy过去的话,
原来的 pointer 变数要怎麽对应呢?
※ 引述《ijb ()》之铭言:
: 用老师的执行档测以下的指令:
: mtest> mtr ----------------------> 什麽都不打,似乎输入0
: Resetting memMgr...(0)
: mtest> mtp
: =========================================
: = Memory Manager =
: =========================================
: * Block size : 65536 Bytes
: * Number of blocks : 1
: * Free mem in last block: 65536
: * Recycle list :
: =========================================
: = class MemTest =
: =========================================
: Object list ---
: Array list ---
: mtest> mtr 100
: Resetting memMgr...(100)
: mtest> mtp
: =========================================
: = Memory Manager =
: =========================================
: * Block size : 100 Bytes
: * Number of blocks : 1
: * Free mem in last block: 100
: * Recycle list :
: =========================================
: = class MemTest =
: =========================================
: Object list ---
: Array list ---
: mtest> mtr
: Resetting memMgr...(0) -------> 什麽都不打,应该输入0,但是block size=100
: 我想问输入都不打时,输入值应该是??
: mtest> mtp
: =========================================
: = Memory Manager =
: =========================================
: * Block size : 100 Bytes
: * Number of blocks : 1
: * Free mem in last block: 100
: * Recycle list :
: =========================================
: = class MemTest =
: =========================================
: Object list ---
: Array list ---
: Quiz 2:
: 若memory new 超过blocksize时,
: 再new一个block时,
: a. size跟原来一样,但接在後面,还是
: b. new一个两倍大的size memblock, 原本的memblock free掉吗?
: 若是a的话,若系统刚好不够这块memory时,该怎麽办?
: 若是b的话,回收的mem是不是都要放弃掉
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.121.134.49