使用线程自己join自己完成线程门栓
生活随笔
收集整理的這篇文章主要介紹了
使用线程自己join自己完成线程门栓
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
public static void main(String[] args) throws InterruptedException {Thread thread = new Thread(new Runnable() {@Overridepublic void run() {try {//這里可以放一個(gè)變量看看是否是0,只有1和0兩種狀態(tài),當(dāng)為0時(shí),才可以進(jìn)行后續(xù)代碼,如果為1,直接自己join自己等待別的線程把該變量原子性減一后再去interrupt它,這也是一種門栓的實(shí)現(xiàn),或者說(shuō)是一種阻塞的實(shí)現(xiàn)Thread.currentThread().join();} catch (InterruptedException e) {e.printStackTrace();//抓到異常后 可以在這里寫后續(xù)代碼}}});thread.start();thread.interrupt();//主線程去打斷他,打斷他之前要將那個(gè)原子性變量減一}
與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖
總結(jié)
以上是生活随笔為你收集整理的使用线程自己join自己完成线程门栓的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 记录java从左上到右下打印二维数组,从
- 下一篇: liunx内核中的互斥自旋锁和读写自旋锁