真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Java中如何新建線程

本篇文章為大家展示了Java中如何新建線程,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。

創(chuàng)新互聯(lián)是一家以網(wǎng)絡(luò)技術(shù)公司,為中小企業(yè)提供網(wǎng)站維護(hù)、成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、網(wǎng)站備案、服務(wù)器租用、主機(jī)域名、軟件開發(fā)、小程序開發(fā)等企業(yè)互聯(lián)網(wǎng)相關(guān)業(yè)務(wù),是一家有著豐富的互聯(lián)網(wǎng)運(yùn)營(yíng)推廣經(jīng)驗(yàn)的科技公司,有著多年的網(wǎng)站建站經(jīng)驗(yàn),致力于幫助中小企業(yè)在互聯(lián)網(wǎng)讓打出自已的品牌和口碑,讓企業(yè)在互聯(lián)網(wǎng)上打開一個(gè)面向全國(guó)乃至全球的業(yè)務(wù)窗口:建站歡迎聯(lián)系:028-86922220

一 點(diǎn)睛

當(dāng)線程被創(chuàng)建啟動(dòng)以后,它既不是一啟動(dòng)就進(jìn)入執(zhí)行狀態(tài),也不是一直處于執(zhí)行狀態(tài),在線程的生命周期中,它要經(jīng)過(guò)新建、就緒、運(yùn)行、阻塞和死亡5種狀態(tài)。當(dāng)線程啟動(dòng)后,它不可能一直霸占CPU獨(dú)自運(yùn)行,所以CPU需要在多個(gè)線程之間切換,于是線程狀態(tài)也會(huì)多次在運(yùn)行和就緒之間切換。

當(dāng)程序使用new關(guān)鍵字創(chuàng)建一個(gè)線程后,該線程就處于新建狀態(tài)。

當(dāng)線程對(duì)象調(diào)用start()方法之后,該線程就處于就緒狀態(tài),處于這個(gè)狀態(tài)的線程并沒有開始運(yùn)行,只是表示該線程可以運(yùn)行了。至于該線程何時(shí)開始運(yùn)行,取決于JVM里線程調(diào)度器的調(diào)度。

自動(dòng)線程使用start()方法,而不是run()方法,永遠(yuǎn)不要調(diào)用線程對(duì)象的run()方法。否則系統(tǒng)把線程對(duì)象當(dāng)作一個(gè)普通對(duì)象,而run()方法也是一個(gè)普通方法,而不是線程執(zhí)行體。

二 代碼

public class InvokeRun extends Thread
{
   private int i ;
   // 重寫run方法,run方法的方法體就是線程執(zhí)行體
   public void run()
   {
      for ( ; i < 100 ; i++ )
      {
        // 直接調(diào)用run方法時(shí),Thread的this.getName返回的是該對(duì)象名字,
        // 而不是當(dāng)前線程的名字。
        // 使用Thread.currentThread().getName()總是獲取當(dāng)前線程名字
        System.out.println(Thread.currentThread().getName()
           + " " + i);  // ①
      }
   }
   public static void main(String[] args)
   {
      for (int i = 0; i < 100; i++)
      {
        // 調(diào)用Thread的currentThread方法獲取當(dāng)前線程
        System.out.println(Thread.currentThread().getName()
           + " " + i);
        if (i == 20)
        {
           // 直接調(diào)用線程對(duì)象的run方法,
           // 系統(tǒng)會(huì)把線程對(duì)象當(dāng)成普通對(duì)象,run方法當(dāng)成普通方法,
           // 所以下面兩行代碼并不會(huì)啟動(dòng)兩條線程,而是依次執(zhí)行兩個(gè)run方法
           new InvokeRun().run();
           new InvokeRun().run();
        }
      }
   }
}

三 運(yùn)行

......
main 93
main 94
main 95
main 96
main 97
main 98
main 99
main 0
main 1
main 2
main 3
main 4
main 5
......

上述內(nèi)容就是Java中如何新建線程,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


新聞標(biāo)題:Java中如何新建線程
當(dāng)前URL:http://weahome.cn/article/ggdeih.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部