av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

Java線程(Thread)四種停止方式代碼實例

瀏覽:60日期:2022-09-04 18:22:21

1.正常的程序啟動,停止

2.使用退出標記,一般程序在run()方法后,線程會正常結束。

但是有一些伺服線程還在運行,他們運行時間較長,只有當外部條件滿足時,他們才會停止。實現如下:

public class ThreadCease extends Thread{ private volatile boolean exit = false; public void run(){ while(!exit){ //停止后做的事情~ }}

3.使用線程(Thread)自帶的isInterrupted()方法來結束線程。實現如下:

public class ThreadCease1 extends Thread{ public void run(){ while(!isInterrupted()){ try{ Thread.sleep(3000); }catch(Exception e){ e.printStackTrace(); break; } } }}

注意:使用interrupted()方法來中斷線程有兩種情況:

3.1.1 線程處于阻塞狀態,如線程中使用了sleep(),同步鎖 wait(),socket的receiver,accept方法時,會使線程進入到阻塞狀態,當程序調用interrupted()方法時,會拋出InterrupteException異常。阻塞中的那個方法拋出異常,通過捕獲該異常,然后break跳出循環,從而結束該線程。注:不是調用了interrupted()方法就會結束線程,是捕獲到了interruptedException異常后,break 跳出循環后才能結束此線程。

3.1.2 線程未處于阻塞狀態,調用interrupted()方法時,實際上是通過判斷線程的中斷標記來退出循環。

4.stop()方法停止

Thread.stop()方法來結束線程的運行,但是很危險,一般不建議使用stop()來停止線程;不安全的原因主要有:在程序調用Thread.stop()后會拋出ThreadDeatherror()錯誤。并釋放子線程所持有的所有鎖,會導致被保護數據呈現不一致性,此過程不可控。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 欧美日韩综合一区 | 97精品超碰一区二区三区 | 欧美精品一二区 | 午夜欧美日韩 | 狠狠综合久久av一区二区老牛 | 国产精品久久久久久久久久久久久 | 毛片免费观看视频 | avav在线看 | 久久精品国产一区二区三区不卡 | 久久伊 | 亚洲一区欧美一区 | 免费黄色a视频 | 99精品一区二区 | 精品视频一区二区 | 六月成人网 | 免费a网 | 超碰成人免费 | 欧美日韩综合精品 | 久久久久亚洲视频 | 欧美日韩成人在线观看 | 成年人在线观看视频 | 精品国产乱码一区二区三区 | 国产乱xxav| 日韩高清在线观看 | 国产精品18hdxxxⅹ在线 | 精品免费视频一区二区 | 黄网址在线观看 | 国产区精品| 爱综合| 国产97在线 | 日韩 | 日韩免费网站 | 日韩欧美在线视频一区 | 美女福利视频网站 | 国产精品久久国产精品 | 91亚洲精品国偷拍自产在线观看 | 欧美2区| 蜜桃在线视频 | 欧美一级欧美一级在线播放 | 中文字幕高清av | 国产精品乱码一区二三区小蝌蚪 | 国产精品久久久久久久久久 |