004 守護執行緒

2022-09-14 05:51:07 字數 833 閱讀 1403

一 . 概述

守護執行緒是一種特殊的執行緒,其特殊性在於:

[1]依賴於其他非守護執行緒,一旦整個程式中沒有了其他型別的執行緒執行,那麼守護執行緒自動終結.

[2]執行的優先級別低,可以作一些系統級別的輔助行為.

二 .建立乙個守護執行緒.

例子:    

thread thread = new

thread()

};thread.setdaemon(

true

); thread.start();

thread.sleep(

3000

); system.

out.println("

end ....

");

建立乙個守護執行緒只需要注意設定乙個守護的屬性就可以了.

三. finally失效

public

class

daemontest

@override

public

void

run()

}finally}}

/*** @param args

* @throws interruptedexception

*/public

static

void

main(string args) throws interruptedexception

}

執行上面的例子,我們發現daemon執行緒無法使用finally語句完成終結,因此對於乙個daemon的資源**問題,我們不應該改依賴這個語法來完成.

主線程 守護執行緒 非守護執行緒

main,但不是守護執行緒。是指在程式執行的時候在後台提供一種通用服務的執行緒。如gc。也叫使用者執行緒,由使用者建立。主線程和守護執行緒一起銷毀 主線程和非守護執行緒互不影響。例如 package com.peng.thread 1 使用者執行緒 非守護執行緒 有主線程建立 2 守護執行緒和主線程...

執行緒 守護執行緒與非守護執行緒

什麼是守護執行緒?非守護執行緒好理解,就是程式中前端執行的執行緒,我個人理解為常用於處理主動事務的執行緒。守護執行緒 顧名思義,用來守護處理事務的執行緒。它主要執行在程式後端,最有代表的例子gc執行緒,就是守護執行緒。守護執行緒的特點 實現守護執行緒,驗證非守護執行緒結束時,守護執行緒也中斷。cre...

守護執行緒和非守護執行緒

基本概念 示例 非守護執行緒 public class mythread extends thread catch interruptedexception e system.out.println 執行緒 thread.currentthread getname 執行了 i 次 public st...