激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

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

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java父線程(或是主線程)等待所有子線程退出的實例

Java父線程(或是主線程)等待所有子線程退出的實例

2021-02-20 11:51牛孝祖 Java教程

下面小編就為大家分享一篇Java父線程(或是主線程)等待所有子線程退出的實例,具有很好的參考價值,希望對大家有所幫助

實例如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
static void testLock1(){
   
   final AtomicInteger waitCount = new AtomicInteger(30000);
   final Object waitObj = new Object();
   System.out.println("start"+System.currentTimeMillis());
   for (int i=0;i<30000;i++) {
    new Thread(new Runnable() {
     @Override
     public void run() {
      try {
       Thread.sleep(10);
      } catch (InterruptedException e) {
       e.printStackTrace();
      }
      waitCount.decrementAndGet();
      synchronized(waitObj){
       waitObj.notifyAll();
      }
     }
    }).start();
   }
   while( waitCount.intValue()>0) {
    synchronized (waitObj) {
     if(waitCount.intValue()>0){
      try {
       waitObj.wait();
      } catch (InterruptedException e) {
       e.printStackTrace();
      }
     }
    }
   }
   System.out.println("ok"+System.currentTimeMillis());
  }
  static void testLock2(){
   
   final CountDownLatch workLauch = new CountDownLatch(30000);//計數器
   System.out.println("start2"+System.currentTimeMillis());
   for (int i=0;i<30000;i++) {
    new Thread(new Runnable() {
     @Override
     public void run() {
      try {
       Thread.sleep(10);
      } catch (InterruptedException e) {
       e.printStackTrace();
      }
      workLauch.countDown();
     }
    }).start();
   }
   try {
    workLauch.await();
   } catch (InterruptedException e) {
    e.printStackTrace();
   }
   System.out.println("ok2"+System.currentTimeMillis());
  }
  public static void main(String[] args) {
   testLock1();
   testLock2();
  }

第一種是我隨便寫的實現,有點糙。第二種是朋友告知的一個類,java的concurrent中的,據說還有幾個相似功能的類實現。這30000個線程 時間差大概是不到200ms的樣子

以上這篇Java父線程(或是主線程)等待所有子線程退出的實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持服務器之家。

原文鏈接:http://www.cnblogs.com/niuxiaozu/p/5973937.html

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25
主站蜘蛛池模板: 97中文字幕第一一一页 | 国产午夜精品理论片a级探花 | 国产精品一区99 | 全网免费毛片 | 欧美精品一区二区三区在线 | 国产亚洲高清在线精品不卡 | 久久最新免费视频 | 精品成人免费一区二区在线播放 | 日韩色电影 | av性色全交蜜桃成熟时 | 久久国产秒 | 一级做a爰性色毛片免费1 | 人人玩人人爽 | 久久草在线看 | 成年性羞羞视频免费观看 | 九九热色 | 国产99精品视频 | 毛片午夜| 成年人黄色片视频 | 深夜免费视频 | 在线成人一区二区 | 强伦女教师视频 | 中文字幕在线第二页 | 蜜桃av鲁一鲁一鲁一鲁 | 九一免费版在线观看 | 国产午夜精品久久久久 | 一级在线观看 | 色交视频 | 亚洲综合视频在线播放 | 中文字幕网在线 | 国产成人精品区 | 91在线视频观看 | 羞羞视频免费网站男男 | 日本a级一区 | 亚洲啪啪| xxxx69hd一hd | 黄色一级片在线观看 | 色视频在线观看 | 中国女人内谢8xxxxxx在 | 免费观看一级黄色片 | 午夜精品福利影院 |