作者OckhamsRazor (魏格納的友人)
看板EE_DSnP
標題[問題] MemMgr::getMemRecycleList()
時間Sun Nov 20 18:57:12 2011
為什麼這個function不能return NULL呢?
可以的話
getMem裡面才能判斷_recycleList內找不到size為n的物件吧???
實在搞不懂不允許的原因...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.24.127
1F:→ e124553423:因為沒有就直接生成一個出來回傳就好了 11/20 19:00
2F:→ OckhamsRazor:但是 沒有的話要先去check activeBlock吧? 11/20 20:15
3F:→ OckhamsRazor:應該不會先在recycleList創一個新物件... 11/20 20:16
4F:→ e124553423:不懂,_activeBlock跟recycleList有什麼關係嗎? 11/20 20:21
5F:→ OckhamsRazor:MemMgr::getMem()在allocate時會先在recycleList內 11/20 20:26
6F:→ OckhamsRazor:尋找有無size相同的T 如果沒有再去activeBlock內找 11/20 20:27
7F:→ OckhamsRazor:所以我不懂為何一定要生一個不存在也用不到的T回傳.. 11/20 20:29
8F:→ OckhamsRazor:還是我理解有誤(大汗 11/20 20:29
9F:→ e124553423:新生成的List是空的一樣會找不到,所以沒差吧 11/20 20:30
10F:→ OckhamsRazor:啊我耍笨了~~~~~~~~~~~~萬分感謝<(_ _)> 11/20 20:31
11F:推 ric2k1:嗯,既然找了就先產生一下,下次recycle時就可以直接用了。 11/20 22:09