使用退出標誌,使執行緒正常退出,也就是當run方法完成後執行緒終止。
使用stop方法強行終止執行緒(這個方法不推薦使用,因為stop和suspend、resume一樣,也可能發生不可預料的結果)。
使用interrupt方法中斷執行緒。(表示讓當前等待的執行緒直接丟擲異常)
**如下:
package com.newdemo.controller.test;
class
stopthread
extends
thread
catch
(interruptedexception e)
} system.out.
println
("子執行緒結束....");
}public
void
stopthread()
}public
class
threaddemo19
}catch
(exception e)}}
}
這樣的話,就能夠讓當前子執行緒停止,但是主線程還在繼續,所以這個時候要注意,不要以為**是錯誤的。 Interrupt如何停止執行緒
理解interrupt可以假設該執行緒擁有乙個變數boolean stopflag,一開始這個flag為false 關於interrupt有三個方法 1,interrupt 表示停止呼叫該方法的執行緒,這句話並不會停止該執行緒,只是會告訴該執行緒,你現在需要停止了。怎樣去停止讓該執行緒自己去完成。這...
如何正確停止執行緒
原理 new乙個thread物件,如 thread thread new thread runnable介面的實現類 然後呼叫thread.interrupt 方法 使用thread.interrupt 只是發出中段訊號,執行緒停不停止並不由自己決定,而是由被停止的執行緒決定,不是強制停止執行緒。r...
如何正確停止執行緒
使用interrupt來通知,並不是強制中斷,換句話說也就是不能強制停止執行緒,沒有停止執行緒的權力。當執行緒被阻塞時,會以拋異常的方式直接響應中斷訊號,不需要再像一種情況那樣進行判斷。如果在執行過程中,每次迴圈都會呼叫sleep或wait等方法,那麼不需要每次迭代都檢查是否已中斷,因為在阻塞狀態中...