代碼:
while(true){
//2.
Socket s = ss.accept();
// Thread updateThread = new Thread(new UpdateTask(s));
// updateThread.start();//開啟線程
// -- 使用線程池 --
threadPool.execute(new UpdateTask(s));
}
上面代碼每次new UpdateTask();但是沒跳出循環,java每次執行完一個Runnable任務後會不會釋放UpdateTask()的內存?如果不會,要怎樣釋放?
這裡不存在你說的內存釋放問題吧,你開啟的線程執行完成後就銷毀了,而此輪循環中創建的對象如果沒有再被引用的時候,它的內存會自動被垃圾回收器回收的。