Java中怎么實(shí)現(xiàn)線程組操作

Java中怎么實(shí)現(xiàn)線程組操作,很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來(lái)學(xué)習(xí)下,希望你能有所收獲。

成都創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站建設(shè)、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的清澗網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

一 點(diǎn)睛

1 Java使用ThreadGroup來(lái)表示線程組,它可以對(duì)一批線程進(jìn)行分類管理,Java允許程序直接對(duì)線程組進(jìn)行控制。

2 一旦某個(gè)線程加入了指定線程組之后,該線程將一直屬于該線程組,直到該線程死亡,線程運(yùn)行中途不能改變它所屬的線程組。

3 Thread類提供了如下幾個(gè)構(gòu)造器來(lái)設(shè)置新創(chuàng)建的線程屬于哪個(gè)線程組:

Thread(ThreadGroup group, Runnable target):以target的run方法作為線程執(zhí)行體創(chuàng)建新線程,屬于group線程組。

Thread(ThreadGroup group, Runnable target, String name):以target的run方法作為線程執(zhí)行體創(chuàng)建新線程,該線程屬于group線程組,且線程名為name。

Thread(ThreadGroup group, String name):創(chuàng)建新線程,新線程名為name,屬于group線程組。

4 Thread類沒有提供setThreadGroup的方法來(lái)改變線程所屬的線程組,但提供了一個(gè)getThreadGroup()方法來(lái)返回該線程所屬的線程組,getThreadGroup()方法的返回值是ThreadGroup對(duì)象,表示一個(gè)線程組。

5 ThreadGroup類有如下兩個(gè)簡(jiǎn)單的構(gòu)造器來(lái)創(chuàng)建實(shí)例。

ThreadGroup(String name):以指定線程組名字來(lái)創(chuàng)建新的線程組。

ThreadGroup(ThreadGroup parent, String name):以指定的名字、指定的父線程組創(chuàng)建一個(gè)新線程組。

二 實(shí)戰(zhàn)

1 代碼

class MyThread extends Thread{   // 提供指定線程名的構(gòu)造器   public MyThread(String name)   {      super(name);   }   // 提供指定線程名、線程組的構(gòu)造器   public MyThread(ThreadGroup group , String name)   {      super(group, name);   }   public void run()   {      for (int i = 0; i < 3 ; i++ )      {        System.out.println(getName() + " 線程的i變量" + i);      }   }}public class ThreadGroupTest{   public static void main(String[] args)   {      // 獲取主線程所在的線程組,這是所有線程默認(rèn)的線程組      ThreadGroup mainGroup = Thread.currentThread().getThreadGroup();      System.out.println("主線程組的名字:"        + mainGroup.getName());      System.out.println("主線程組是否是后臺(tái)線程組:"        + mainGroup.isDaemon());      new MyThread("主線程組的線程").start();      ThreadGroup tg = new ThreadGroup("新線程組");      tg.setDaemon(true);      System.out.println("tg線程組是否是后臺(tái)線程組:"        + tg.isDaemon());      MyThread tt = new MyThread(tg , "tg組的線程甲");      tt.start();      new MyThread(tg , "tg組的線程乙").start();   }}

2 運(yùn)行

主線程組的名字:main主線程組是否是后臺(tái)線程組:falsetg線程組是否是后臺(tái)線程組:true主線程組的線程 線程的i變量0tg組的線程甲 線程的i變量0tg組的線程甲 線程的i變量1主線程組的線程 線程的i變量1tg組的線程乙 線程的i變量0tg組的線程乙 線程的i變量1tg組的線程乙 線程的i變量2主線程組的線程 線程的i變量2tg組的線程甲 線程的i變量2

看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對(duì)創(chuàng)新互聯(lián)的支持。

新聞標(biāo)題:Java中怎么實(shí)現(xiàn)線程組操作
網(wǎng)站URL:http://bm7419.com/article24/iihdje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁(yè)設(shè)計(jì)公司、全網(wǎng)營(yíng)銷推廣網(wǎng)站制作、品牌網(wǎng)站建設(shè)網(wǎng)站維護(hù)、微信公眾號(hào)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營(yíng)