一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - java信號量控制線程打印順序的示例分享

java信號量控制線程打印順序的示例分享

2019-11-01 14:19java技術網 JAVA教程

這篇文章主要介紹了java信號量控制線程打印順序的示例,如ABCABC這樣輸出線程,大家參考使用吧

代碼如下:


import java.util.concurrent.Semaphore;

 

public class ThreeThread {

 public static void main(String[] args) throws InterruptedException {
  Semaphore sempA = new Semaphore(1);
  Semaphore sempB = new Semaphore(0);
  Semaphore sempC = new Semaphore(0);
  int N=100;
  Thread threadA = new PrintThread(N, sempA, sempB, "A");
  Thread threadB = new PrintThread(N, sempB, sempC, "B");
  Thread threadC = new PrintThread(N, sempC, sempA, "C");
  threadA.start();
  threadB.start();
  threadC.start();
 }

 static class PrintThread extends Thread{

  int N;
  Semaphore curSemp;
  Semaphore nextSemp;
  String name;

  public PrintThread(int n, Semaphore curSemp, Semaphore nextSemp, String name) {
   N = n;
   this.curSemp = curSemp;
   this.nextSemp = nextSemp;
   this.name = name;
  }

  public void run() {
   for (int i = 0; i < N; ++i) {
    try {
     curSemp.acquire();
     System.out.println(name);
     nextSemp.release();
    } catch (InterruptedException e) {
     Thread.currentThread().interrupt();
    }
   }
  }

 }

}

 

延伸 · 閱讀

精彩推薦
  • JAVA教程java基本教程之多線程基本概念 java多線程教程

    java基本教程之多線程基本概念 java多線程教程

    多線程是Java中不可避免的一個重要主體。下面是對“JDK中新增JUC包”之前的Java多線程內容的講解,JUC包是由Java大師Doug Lea完成并在JDK1.5版本添加到Java中的...

    java教程網3692019-10-31
  • JAVA教程java自定義日志輸出文件(log4j日志文件輸出多個自定義日志文件)

    java自定義日志輸出文件(log4j日志文件輸出多個自定義日志文件

    打印日志的在程序中是必不可少的,如果需要將不同的日志打印到不同的地方,則需要定義不同的Appender,然后定義每一個Appender的日志級別、打印形式和日...

    java教程網3592019-10-30
  • JAVA教程java與php的區別淺析

    java與php的區別淺析

    在本篇文章里小編給大家整理了關于java與php的區別以及相關知識點,有興趣的朋友們學習下。...

    laozhang3992019-06-24
  • JAVA教程zookeeper服務優化的一些建議

    zookeeper服務優化的一些建議

    今天小編就為大家分享一篇關于zookeeper服務優化的一些建議,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來...

    Scub3492019-06-20
  • JAVA教程java中String的常見用法總結

    java中String的常見用法總結

    以下是關于string的七種用法,注意哦,記得要時常去查看java的API文檔,那個里面也有很詳細的介紹 ...

    java技術網5032019-10-16
  • JAVA教程Java 容器類源碼詳解 Set

    Java 容器類源碼詳解 Set

    這篇文章主要介紹了Java 容器類源碼詳解 Set,Set 表示由無重復對象組成的集合,也是集合框架中重要的一種集合類型,直接擴展自 Collection 接口。,需要的...

    Givefine3912019-06-26
  • JAVA教程Java讀取.properties配置文件方法示例

    Java讀取.properties配置文件方法示例

    這篇文章主要介紹了Java讀取.properties配置文件,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨...

    黃浩#4622019-06-20
  • JAVA教程java使用Jsoup連接網站超時的解決方法

    java使用Jsoup連接網站超時的解決方法

    jsoup是一個非常好的解析網頁的包,用java開發的,提供了類似DOM,CSS選擇器的方式來查找和提取文檔中的內容,提取文檔內容時會出現超時的情況,解決方法...

    java教程網3072019-10-21
主站蜘蛛池模板: 免费永久观看美女视频网站网址 | 亚洲区一 | 操丝袜秘书 | 欧美国产日产精品免费视频 | 精品久久99麻豆蜜桃666 | 国产成人精品一区二区阿娇陈冠希 | 2048论坛永久入口 原创合集 | 九九热精品免费观看 | 国产福利视频一区二区微拍 | 久久毛片基地 | 成人免费一区二区三区在线观看 | 亚洲日本视频在线观看 | 日本三不卡 | 国产美女做爰免费视频网址 | 国产亚洲精品自在线亚洲情侣 | 全肉np巨肉一女np高h双龙 | 91麻豆影视 | 日本不卡在线一区二区三区视频 | 免费精品99久久国产综合精品 | 日本黄a三级三级三级 | 黄a级 | www.色婷婷.com| 国产精品高清一区二区三区不卡 | 欧美精品一区二区在线观看 | 欧洲vodafonewi精品 | 欧美日韩中文字幕在线视频 | 日本xxxxxxxxx高清hd | 99在线视频免费 | 亚洲国产五月综合网 | 人生路不在线观看完整版 | 亚洲欧美精品一区二区 | 91热国产| 亚洲国产日韩成人综合天堂 | 我要看逼 | 九九热在线观看视频 | 无人在线高清免费看 | 成人国产一区 | 亚洲高清在线天堂精品 | 国产黄色大片网站 | 日韩在线免费播放 | se在线播放|