欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java線程中的notifyAll喚醒操作(推薦)

 更新時(shí)間:2017年03月24日 11:40:10   作者:溫柔的鯊魚  
這篇文章主要介紹了Java線程中的notifyAll喚醒操作,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下

注意:

java中的notifyAll和notify都是喚醒線程的操作,notify只會(huì)喚醒等待池中的某一個(gè)線程,但是不確定是哪一個(gè)線程,notifyAll是針對(duì)指定對(duì)象里面的所有線程執(zhí)行喚醒操作,指定對(duì)象一旦喚醒成功。則會(huì)立即加入線程的資源爭奪中去。

例如:

package TestThread.ThreadSynchronized;
public class TestWaitAll {
 public static void main(String[] args) {
  Test1 test1 = new Test1();
  Thread t = new Thread(test1, "線程1");
  Thread t1 = new Thread(test1, "線程2");
  Thread t2 = new Thread(test1, "線程3");
  Test2 test2 = new Test2(test1, "喚醒線程");
  t.start();
  t1.start();
  t2.start();
  try {
   Thread.sleep(2000);
  } catch (InterruptedException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  test2.start();
 }
}
class Test1 implements Runnable {
 public void run() {
  synchronized (this) {
   try {
    this.wait();
   } catch (InterruptedException e) {
    e.printStackTrace();
   }
   System.out.println(Thread.currentThread().getName() + "當(dāng)前沒有被執(zhí)行到!");
  }
 }
}
class Test2 extends Thread {
 private Test1 test1;
 String name;
 public Test2(Test1 test1, String name) {
  super(name);
  this.name = name;
  this.test1 = test1;
 }
 public void run() {
  synchronized (test1) {
   test1.notifyAll();// 針對(duì)當(dāng)前對(duì)象執(zhí)行喚醒所有線程的操作
   System.out.println(Thread.currentThread().getName() + ":喚醒線程執(zhí)行成功!");
  }
 }
}

 執(zhí)行結(jié)果為:

以上所述是小編給大家介紹的Java線程中的notifyAll喚醒操作,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Java并發(fā)工具輔助類代碼實(shí)例

    Java并發(fā)工具輔助類代碼實(shí)例

    這篇文章主要介紹了Java并發(fā)工具輔助類代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04
  • java五子棋小游戲?qū)崿F(xiàn)代碼

    java五子棋小游戲?qū)崿F(xiàn)代碼

    這篇文章主要為大家詳細(xì)介紹了java五子棋實(shí)現(xiàn)代碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • 基于java時(shí)區(qū)轉(zhuǎn)換夏令時(shí)的問題及解決方法

    基于java時(shí)區(qū)轉(zhuǎn)換夏令時(shí)的問題及解決方法

    下面小編就為大家分享一篇基于java時(shí)區(qū)轉(zhuǎn)換夏令時(shí)的問題及解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2017-11-11
  • 支付寶二面:使用?try-catch?捕獲異常會(huì)影響性能嗎(推薦)

    支付寶二面:使用?try-catch?捕獲異常會(huì)影響性能嗎(推薦)

    這篇文章主要介紹了支付寶二面:使用?try-catch?捕獲異常會(huì)影響性能嗎,需要注意的是,JVM?中?異常處理的catch語句不再由字節(jié)碼指令來實(shí)現(xiàn)(很早之前通過?jsr和?ret指令來完成,需要的朋友可以參考下
    2023-03-03
  • Spring工廠方法創(chuàng)建(實(shí)例化)bean實(shí)例代碼

    Spring工廠方法創(chuàng)建(實(shí)例化)bean實(shí)例代碼

    這篇文章主要介紹了Spring工廠方法創(chuàng)建bean實(shí)例代碼,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-01-01
  • 全網(wǎng)最精細(xì)詳解二叉樹,2萬字帶你進(jìn)入算法領(lǐng)域

    全網(wǎng)最精細(xì)詳解二叉樹,2萬字帶你進(jìn)入算法領(lǐng)域

    大家好,我是哪吒,一個(gè)熱愛編碼的Java工程師,本著"欲速則不達(dá),欲達(dá)則欲速"的學(xué)習(xí)態(tài)度,在程序猿這條不歸路上不斷成長,所謂成長,不過是用時(shí)間慢慢擦亮你的眼睛,少時(shí)看重的,年長后卻視若鴻毛,少時(shí)看輕的,年長后卻視若泰山,成長之路,亦是漸漸放下執(zhí)念,內(nèi)心歸于平靜的旅程
    2021-08-08
  • java 如何實(shí)現(xiàn)日志追蹤MDC

    java 如何實(shí)現(xiàn)日志追蹤MDC

    這篇文章主要介紹了java 實(shí)現(xiàn)日志追蹤MDC方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • 深入剖析Java中的synchronized關(guān)鍵字

    深入剖析Java中的synchronized關(guān)鍵字

    在 Java 程序中,我們可以利用 synchronized 關(guān)鍵字來對(duì)程序進(jìn)行加鎖,它既可以用來聲明一個(gè) synchronized 代碼塊,也可以直接標(biāo)記靜態(tài)方法或者實(shí)例方法,本文就帶大家深入了解Java中的synchronized關(guān)鍵字,感興趣的同學(xué)可以參考閱讀
    2023-06-06
  • mybatis打印的sql日志不寫入到log文件的問題及解決

    mybatis打印的sql日志不寫入到log文件的問題及解決

    這篇文章主要介紹了mybatis打印的sql日志不寫入到log文件的問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • 用java實(shí)現(xiàn)在txt文本中寫數(shù)據(jù)和讀數(shù)據(jù)的方法

    用java實(shí)現(xiàn)在txt文本中寫數(shù)據(jù)和讀數(shù)據(jù)的方法

    今天小編就為大家分享一篇用java實(shí)現(xiàn)在txt文本中寫數(shù)據(jù)和讀數(shù)據(jù)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07

最新評(píng)論