看板 C_Sharp 關於我們 聯絡資訊
請教一下各位大大, 以下是我每次發布一個新資料就會重新讀一次showmap4() private void showmap4() { PictureBox[] pics2 = new PictureBox[100]; ContextMenu[] enrolls2 = new ContextMenu[100]; MenuItem[] names2 = new MenuItem[100]; for (int i = 0; i < a; i++) { pics2[i] = new PictureBox(); enrolls2[i] = new ContextMenu(); names2[i] = new MenuItem(); } } 想請問一下若每次重新讀一次pics2、enrolls2、names2需要釋放掉嗎? 因為我發現每次發布完我這支程式所佔的記憶體會逐漸增加,因為是用在PDA ,所以發布太多次訊息後,發現會overload導致程式錯誤,請問該如何釋放掉資源? 謝謝各位大大了>< -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.139.209.114
ilovebbs:C#的是GC.Collect()的樣子 不過.NET會自己回收 只不過不 10/25 09:01
ilovebbs:快就是 10/25 09:01
ithinkurdumb:手動用gc要小心適得其反 10/25 12:38
deuter:有用到Image 就最好用 Dispose 釋放掉 10/26 02:03
pat0307:請問GC.Collect()要寫在哪裡,寫一個就好了嗎? 10/27 01:59
deuter:GC.Collect不要亂用, 你的情況大概是因為沒有 Dispose() 10/27 14:41