色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

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

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

1.正常的程序啟動(dòng),停止

2.使用退出標(biāo)記,一般程序在run()方法后,線程會(huì)正常結(jié)束。

但是有一些伺服線程還在運(yùn)行,他們運(yùn)行時(shí)間較長(zhǎng),只有當(dāng)外部條件滿足時(shí),他們才會(huì)停止。實(shí)現(xiàn)如下:

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

3.使用線程(Thread)自帶的isInterrupted()方法來結(jié)束線程。實(shí)現(xiàn)如下:

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

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

3.1.1 線程處于阻塞狀態(tài),如線程中使用了sleep(),同步鎖 wait(),socket的receiver,accept方法時(shí),會(huì)使線程進(jìn)入到阻塞狀態(tài),當(dāng)程序調(diào)用interrupted()方法時(shí),會(huì)拋出InterrupteException異常。阻塞中的那個(gè)方法拋出異常,通過捕獲該異常,然后break跳出循環(huán),從而結(jié)束該線程。注:不是調(diào)用了interrupted()方法就會(huì)結(jié)束線程,是捕獲到了interruptedException異常后,break 跳出循環(huán)后才能結(jié)束此線程。

3.1.2 線程未處于阻塞狀態(tài),調(diào)用interrupted()方法時(shí),實(shí)際上是通過判斷線程的中斷標(biāo)記來退出循環(huán)。

4.stop()方法停止

Thread.stop()方法來結(jié)束線程的運(yùn)行,但是很危險(xiǎn),一般不建議使用stop()來停止線程;不安全的原因主要有:在程序調(diào)用Thread.stop()后會(huì)拋出ThreadDeatherror()錯(cuò)誤。并釋放子線程所持有的所有鎖,會(huì)導(dǎo)致被保護(hù)數(shù)據(jù)呈現(xiàn)不一致性,此過程不可控。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 日本香蕉一区二区三区 | 亚洲精品一区二区久久 | 久久99亚洲精品久久久久99 | www.99精品视频在线播放 | 国产成人精品精品欧美 | 一级aaa毛片 | 日本成人在线免费观看 | 亚洲综合91 | 日韩最新中文字幕 | 美国毛片亚洲社区在线观看 | 国产成人免费高清视频 | 国产玖玖在线 | 日本视频在线观看不卡高清免费 | 毛片基地看看成人免费 | 国产天堂在线一区二区三区 | 亚洲一区二区精品 | 模特三级在线观看 | 成人免费大片a毛片 | 国产亚洲国产bv网站在线 | 国产99视频精品免费视频7 | 色综合久久久久久久 | 在线观看偷拍视频一区 | 欧美精品高清 | 手机看片高清国产日韩片 | 中文字幕一区二区三区免费视频 | 日本三级香港三级人妇99 | 国产高清在线精品一区二区三区 | 国产激情一区二区三区在线观看 | 看a网址| 精品免费久久久久欧美亚一区 | 久久视频精品线视频在线网站 | 国内精品一区二区三区最新 | 高清日本无a区 | 亚洲成人影院在线 | 日本加勒比在线观看 | 91免费永久国产在线观看 | 白云精品视频国产专区 | 欧美一级三级 | 欧美日韩在线观看免费 | 美女黄网站视频 | 国产成人福利视频在线观看 |