国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

java 多線程 守護線程

tianren124 / 3268人閱讀

摘要:的作用是為其他線程的運行提供便利服務,守護線程最典型的應用就是垃圾回收器我是子線程我是主線程主線程執行完畢注意必須在之前設置,否則會跑出一個異常。你不能把正在運行的常規線程設置為守護線程。在線程中產生的新線程也是的。

在Java中有兩類線程:User Thread(用戶線程)、Daemon Thread(守護線程)

用戶線程是指用戶自定義創建的線程,主線程停止,用戶線程不會停止

只要當前JVM實例中尚存在任何一個非守護線程沒有結束,守護線程就全部工作;只有當最后一個非守護線程結束時,守護線程隨著JVM一同結束工作。Daemon的作用是為其他線程的運行提供便利服務,守護線程最典型的應用就是 GC (垃圾回收器)

public class DaemonThread {

    public static void main(String[] args) {
        Thread thread = new Thread(new Runnable() {
            @Override
            public void run() {
                while (true) {
                    try {
                        Thread.sleep(100);
                    } catch (Exception e) {
                        
                    }
                    System.out.println("我是子線程...");
                }
            }
        });
        thread.setDaemon(true);
        thread.start();
        for (int i = 0; i < 10; i++) {
            try {
                Thread.sleep(100);
            } catch (Exception e) {

            }
            System.out.println("我是主線程");
        }
        System.out.println("主線程執行完畢!");
    }

}

注意
(1) thread.setDaemon(true)必須在thread.start()之前設置,否則會跑出一個IllegalThreadStateException異常。你不能把正在運行的常規線程設置為守護線程。
(2) 在Daemon線程中產生的新線程也是Daemon的。
(3) 不要認為所有的應用都可以分配給Daemon來進行服務,比如讀寫操作或者計算邏輯

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/74267.html

相關文章

  • 慕課網_《細說線程之Thread VS Runnable》學習總結

    摘要:時間年月日星期六說明本文部分內容均來自慕課網。慕課網教學源碼無學習源碼第一章課前準備前言課程說明比較和這兩種線程創建的方式,需要知道和的基本創建方式。一旦主線程獲取到了用戶的輸入,這時候,阻塞就會解除掉,主線程繼續運行,直到結束。 時間:2017年07月08日星期六說明:本文部分內容均來自慕課網。@慕課網:http://www.imooc.com教學源碼:無學習源碼:https://g...

    netScorpion 評論0 收藏0
  • Java線程學習(一)Java線程入門

    摘要:最近聽很多面試的小伙伴說,網上往往是一篇一篇的多線程的文章,除了書籍沒有什么學習多線程的一系列文章。將此線程標記為線程或用戶線程。 最近聽很多面試的小伙伴說,網上往往是一篇一篇的Java多線程的文章,除了書籍沒有什么學習多線程的一系列文章。但是僅僅憑借一兩篇文章很難對多線程有系統的學習,而且面試的時候多線程這方面的知識往往也是考察的重點,所以考慮之下決定寫一系列關于Java多線程的文章...

    Donne 評論0 收藏0
  • Java基礎學習——線程之停止線程守護線程

    摘要:方法將凍結狀態的線程強制運行,并拋出異常。注意只有在運行狀態的線程才能讀到標識位,最終停止線程。當正在運行的線程都是守護線程時,虛擬機退出。 stop()等方法過時以后,停止線程的唯一方法就是結束run()方法:開啟多線程運行通常都是循環結構,只要使用標識位控制住循環,就可以讓run()方法結束,即線程結束。 特殊情況:當線程處于了凍結狀態就不會讀取到標記,那么線程就不會停止。 int...

    _Suqin 評論0 收藏0
  • Thread源碼剖析

    摘要:現在已經沒有強制線程終止的方法了由于方法可以讓一個線程終止掉另一個線程被終止的線程會立即釋放鎖,這可能會讓對象處于不一致的狀態。 前言 昨天已經寫了: 多線程三分鐘就可以入個門了! 如果沒看的同學建議先去閱讀一遍哦~ 在寫文章之前通讀了一遍《Java 核心技術 卷一》的并發章節和《Java并發編程實戰》前面的部分,回顧了一下以前寫過的筆記。從今天開始進入多線程的知識點咯~ 我其實也是相...

    HtmlCssJs 評論0 收藏0
  • @Java | Thread & synchronized - [ 線程 理論知識]

    摘要:死亡線程方法執行結束,或者因異常退出了方法,則該線程結束生命周期。死亡的線程不可再次復生。直到當前的線程放棄此對象上的鎖定,才能繼續執行被喚醒的線程。枚舉程序中的線程。強迫一個線程等待。通知一個線程繼續運行。 一. 線程狀態轉換圖 showImg(https://segmentfault.com/img/bV38ef?w=968&h=680); 線程間的狀態轉換說明: 新建(new)...

    harryhappy 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<