首先不要使用 thread.stop() 方法,該方法會強制執行緒立即停止執行,不安全,造成不可預知的錯誤。
如下面**所示
thread thread = new thread()
// 在執行耗時操作之前,
// thread.interrupted()
// 並且會清除當前執行緒的中斷狀態(置為false)。
if (interrupted())
// 執行一些耗時操作。
system.out.println("number:" + i);}}
};thread.start();
try catch (interruptedexception e)
// // 強制執行緒立即停止執行,不安全,造成不可預知的錯誤
// thread.stop();
// 溫和版本的停止執行緒,不立即,不強制,預設不停止。
// 標記希望該執行緒被interrupt
// 該方法需要被打斷的執行緒檢查interrupt狀態來停止
thread.interrupt();
JAVA中線程同步方法
在這裡看到的 1 wait方法 該方法屬於object的方法,wait方法的作用是使得當前呼叫wait方法所在部分 塊 的執行緒停止執行,並釋放當前獲得的呼叫wait所在的 塊的鎖,並在其他執行緒呼叫notify或者notifyall方法時恢復到競爭鎖狀態 一旦獲得鎖就恢復執行 呼叫wait方法需要...
JAVA中線程同步方法
1wait方法 該方法屬於object的方法,wait方法的作用是使得當前呼叫wait方法所在部分 塊 的執行緒停止執行,並釋放當前獲得的呼叫wait所在的 塊的鎖,並在其他執行緒呼叫notify或者notifyall方法時恢復到競爭鎖狀態 一旦獲得鎖就恢復執行 呼叫wait方法需要注意幾點 第一點...
java 執行緒停止的方法
1.設定flag,死迴圈中檢測flag是否為false 2.interrupt方法 public static object lock new object public static void main string args catch interruptedexception e thread...