說(shuō)明
1、使用自定義的全局變量終止線(xiàn)程。終止方法比較溫柔,在拿到終止指令后,需要執(zhí)行完當(dāng)前的任務(wù)才會(huì)終止線(xiàn)程。
使用全局變量方式“終止說(shuō)話(huà)”后又有一次“正在說(shuō)話(huà)”。
2、全局變量控制線(xiàn)程終止會(huì)讓當(dāng)前任務(wù)結(jié)束后再進(jìn)行終止。
實(shí)例
public class ThreadDemo {
// 全局自定義變量
private static boolean flag = false;
public static void main(String[] args) throws InterruptedException {
// 轉(zhuǎn)賬線(xiàn)程
Thread t1 = new Thread(new Runnable() {
@Override
public void run() {
while (!flag) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("正在講話(huà)...");
}
System.out.println("停止說(shuō)話(huà)");
}
});
t1.start();
Thread t2 = new Thread(new Runnable() {
@Override
public void run() {
try {
Thread.sleep(310);
} catch (InterruptedException e) {
e.printStackTrace();
}
// 改變變量的值來(lái)終止線(xiàn)程
System.out.println("停止說(shuō)話(huà),有要事發(fā)生。");
flag = true;
}
});
t2.start();
t1.join(); //對(duì)于用戶(hù)線(xiàn)程而言,join()可以不寫(xiě)
t2.join();
}
}
以上就是java中使用全局變量終止線(xiàn)程的方法,希望對(duì)大家有所幫助。更多關(guān)于“java培訓(xùn)”的問(wèn)題,歡迎咨詢(xún)千鋒教育在線(xiàn)名師。千鋒教育多年辦學(xué),課程大綱緊跟企業(yè)需求,更科學(xué)更嚴(yán)謹(jǐn),每年培養(yǎng)泛IT人才近2萬(wàn)人。不論你是零基礎(chǔ)還是想提升,都可以找到適合的班型,千鋒教育隨時(shí)歡迎你來(lái)試聽(tīng)。