原文:如何優雅地停止一個線程?

線程終止有兩種情況: 線程的任務執行完成 線程在執行任務過程中發生異常 這兩者屬於線程自行終止,如何讓線程 A 把線程 B 終止呢 Java 中 Thread 類有一個 stop 方法,可以終止線程,不過這個方法會讓線程直接終止,在執行的任務立即終止,未執行的任務無法反饋,所以 stop 方法已經不建議使用。 既然 stop 方法如此粗暴,不建議使用,我們如何優雅地結束線程呢 線程只有從runna ...

2019-10-16 12:00 0 1038 推薦指數:

查看詳情

如何優雅停止一個線程

在之前的文章中 i-code.online -《並發編程-線程基礎》我們介紹了線程的創建和終止,從源碼的角度去理解了其中的細節,那么現在如果面試有人問你 “如何優雅停止一個線程?”, 你該如何去回答尼 ?能不能完美的回答尼? 對於線程停止,通常情況下我們是不會去手動去停止 ...

Tue Oct 13 03:04:00 CST 2020 0 1290
安全優雅停止線程

首先,先拋出一個問題,該如何安全而優雅停止線程? 這道問題的背后,可以很小,小到只是簡單終止一個Thread線程,也可以很大,大到例如Dubbo應用的優雅下線......它們其實都有一個共同之處,即非一刀斷式地暴力停止某個進程或者線程,而是能夠實現在終止過程中,有機會去清理資源,跑完剩余的任務 ...

Sun Dec 05 08:09:00 CST 2021 0 378
如何優雅地終止一個線程

我們的系統肯定有些線程為了保證業務需要是要常駐后台的,一般它們不會自己終止,需要我們通過手動來終止它們。我們知道啟動一個線程是start方法,自然有一個對應的終止線程的stop方法,通過stop方法可以很快速、方便地終止一個線程,我們來看看stop的源代碼。 通過注解 ...

Thu Apr 30 16:43:00 CST 2020 0 873
如何停止一個線程池?

Java 並發工具包中 java.util.concurrent.ExecutorService 接口定義了線程池任務提交、獲取線程池狀態、線程停止的方法等。 JDK 1.8 中,線程池的停止一般使用 shutdown()、shutdownNow()、shutdown ...

Thu Oct 17 00:28:00 CST 2019 0 1530
如何正確的停止一個線程

停止一個線程意味着在任務處理完任務之前停掉正在做的操作,也就是放棄當前的操作。停止一個線程可以用Thread.stop()方法,但最好不要用它。雖然它確實可以停止一個正在運行的線程,但是這個方法是不安全的,而且是已被廢棄的方法。在java中有以下3種方法可以終止正在運行的線程: 使用退出 ...

Thu Apr 11 19:13:00 CST 2019 0 925
java如何停止一個運行的線程

關於線程的一點心得 //首先導入需要的包 improt java.util.Timer;import java.io.File;import java.util.TimerTask; //首先需要創建一個線程並且一直運行,然后創建一個計時器任務來觸發事件(比如創建一個stop.txt文件 ...

Wed Apr 05 16:54:00 CST 2017 1 2439
Java如何檢查一個線程停止或沒有?

Java如何檢查一個線程停止或沒有? 解決方法 下面的示例演示如何使用 isAlive()方法檢查一個線程是否停止。 public class Main { public static void main(String[] argv) throws Exception { Thread ...

Sun Sep 09 21:30:00 CST 2018 0 713
如何正確地停止一個線程

詳見:http://www.cnblogs.com/greta/p/5624839.html 停止一個線程意味着在任務處理完任務之前停掉正在做的操作,也就是放棄當前的操作。停止一個線程可以用Thread.stop()方法,但最好不要用它。雖然它確實可以停止一個正在運行的線程,但是這個方法是不安全 ...

Thu Nov 22 23:24:00 CST 2018 0 1534
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM