java多執行緒interrupt 方法

2021-09-08 02:58:44 字數 694 閱讀 7126

執行緒a與執行緒b,在業務中,常常因為執行緒之前的業務關係,需要互相影響,甚至是a去中斷b,thread.interrupt()提供了這樣乙個操作。

例子:

package com.threadtest;

public class threadinterruptedtest catch (interruptedexception e)

system.out.println("執行緒t1結束");}};

t1.start();

thread t2 = new thread(new runnable() catch (interruptedexception e)

system.out.println("執行緒t2結束");

}});

t2.start();}}

執行結果:

執行結果說明:

t1通過休眠10s模擬t1自身業務耗時,t2通過休眠3s模擬業務耗時,3s後,t2業務結束,呼叫t1.interrupt()方法來中斷t1的業務。在控制台可以看到,t1收到了中斷資訊,進入到了執行緒中斷的**並列印出了相關中斷資訊,但是如果不做return等相關操作,t1在執行完相關操作後仍會向下繼續執行**。所以,每個人應根據自己的業務決定是否讓**繼續執行。

java多執行緒

在網上看到很有意思的問題,摘下來好好看下 在面試的時候被問了乙個多執行緒的問題 回來仔細思考了一下,多執行緒是否真的能提高了效率?我對多執行緒的理解就是 比如挖乙個隧道,有2種開工方法 1 只在山的一頭挖,直至挖到山的另一頭,從而打通隧道,這可以看成是單執行緒 2 在山的兩頭挖,同時開工,最後在山的...

Java 多執行緒

1。thread類和runnable介面 2。主線程 用thread的static thread currentthread 方法獲得 3。通過實現runnable介面建立執行緒 實現runnable介面的run方法。新執行緒在run 方法返回時結束。注意用這種方法建立程序時,在實現runnable...

JAVA 多執行緒

為hashmap的不正確使用所導致。hashmap在多執行緒環境下使用不安全。使用靜態hashmap作為聯絡人資料快取,key為手機號碼.private static maplxrdata new hashmap 多執行緒環境下不同步hashmap可能導致如下問題 1 多執行緒put操作後可能導致g...