最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java線程的聯(lián)合用法實例分析

 更新時間:2019年10月18日 08:43:04   作者:cakincqm  
這篇文章主要介紹了Java線程的聯(lián)合用法,結(jié)合實例形式分析了java線程聯(lián)合的原理、實現(xiàn)方法及相關(guān)操作技巧,需要的朋友可以參考下

本文實例講述了Java線程的聯(lián)合用法。分享給大家供大家參考,具體如下:

一 點睛

在Java中,線程控制提供了join()方法。該方法的功能是把指定的線程加入到當前線程,從而實現(xiàn)將兩個交替執(zhí)行的線程,合并為順序執(zhí)行的線程。比方說,在線程A中調(diào)用了線程B的join()方法,線程A就會立刻掛起(suspend),一直等下去,直到它所聯(lián)合的線程B執(zhí)行完畢為止,A線程才重新排隊等待CPU資源,以便恢復(fù)執(zhí)行。這種策略通常會在main()主線程內(nèi),用以等待其他線程完成后,再結(jié)束main()主線程。

二 代碼

public class ThreadJoin
{
  public static void main( String[] args )
  {
    ThreadTest t = new ThreadTest();
    Thread pp = new Thread( t );
    pp.start();
    int flag = 0;
    for( int i = 0; i < 5; ++i )
    {
      if( flag == 3 )
      {
        try
        {
          pp.join();    // 強制運行完pp線程后,再運行后面的程序
        }
        catch( Exception e ) // 會拋出InterruptedException
        {
          System.out.println( e.getMessage() );
        }
      }
      System.out.println( "main Thread " + flag );
      flag += 1;
    }
  }
}
class ThreadTest implements Runnable
{
  public void run()
  {
    int i = 0;
    for( int x = 0; x < 5; ++x )
    {
      try
      {
        Thread.sleep( 1000 );
      }
      catch( InterruptedException e )
      {
        e.printStackTrace();
      }
      System.out.println( Thread.currentThread().getName() + " ---->> " + i );
      i += 1;
    }
  }
}

三 運行

main Thread 0
main Thread 1
main Thread 2
Thread-0 ---->> 0
Thread-0 ---->> 1
Thread-0 ---->> 2
Thread-0 ---->> 3
Thread-0 ---->> 4
main Thread 3
main Thread 4

更多java相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java進程與線程操作技巧總結(jié)》、《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總

希望本文所述對大家java程序設(shè)計有所幫助。

相關(guān)文章

最新評論

南城县| 萍乡市| 文水县| 南安市| 秀山| 南江县| 郴州市| 德清县| 雷波县| 丽水市| 海城市| 景德镇市| 绥宁县| 克什克腾旗| 昭苏县| 依安县| 汉寿县| 象州县| 荥经县| 永仁县| 武威市| 禄劝| 梨树县| 宜兴市| 衡阳市| 泰和县| 锡林浩特市| 卓尼县| 西宁市| 塔河县| 历史| 林周县| 贵港市| 巢湖市| 乐东| 安吉县| 进贤县| 汝阳县| 邳州市| 莲花县| 汉中市|