[問題] 記憶體回收循環檢查
問題(Question):
不曉得在此地發這篇文適合否,本身是社會新鮮人,
目前第一次用lua開發遊戲,但lua幾乎沒有中文討論區,
而lua也是用c編譯,所以發個觀念的疑問,
進入主題↓
lua的gc是一種循環檢查,到某個時間點會去找不再被用到記憶體
譬如 a = self:create_child('a','Classname')
此時a算是一個指標(有誤請鞭),
指向上列程式碼編譯後會分配一個記憶體位置(大小看Class)
如果當a不再指向該記憶體位置,此時那個位置是沒有任何"參考"(有誤請鞭)
過一陣子該記憶體位置就會被釋放(?)
但是當一直分配記憶體,用完後取消參考,
理想中該程式總記憶體使用量應該是會維持在同一個水平,
而我現在的問題就是,一直分配、釋放數萬次後,
記憶體使用量就爆了,被強制殺了T_T
其實中間是有透過SDK,所以或許SDK也會有問題?
想問問各位高強程式員,是我觀念有誤呢,還是哪裡出了問題,
PS.發文如有不妥,煩請告知。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.40.204.223
推
09/17 22:28, , 1F
09/17 22:28, 1F
→
09/17 22:30, , 2F
09/17 22:30, 2F
→
09/17 22:30, , 3F
09/17 22:30, 3F
→
09/17 22:31, , 4F
09/17 22:31, 4F
→
09/18 02:24, , 5F
09/18 02:24, 5F
→
09/18 02:24, , 6F
09/18 02:24, 6F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章
11
39