Javaでデーモンスレッドとネイティブスレッドの違い

2種類のJavaスレッド:デーモンスレッド(デーモン)とユーザスレッド(ユーザー)。
任意のスレッドは、方法Thread.setDaemon(boolon)によって、ユーザデーモンスレッドとスレッドに設定することができ、真プットは、スレッドがデーモンスレッドが設けられており、ユーザスレッドのその逆。Thread.setDaemonは()Thread.start前に、それ以外の場合は、実行時に例外がスローされます()と呼ばなければなりません。
両者の差:
唯一の違いは残すようにする場合、仮想マシン(JVM)ということであるユーザスレッドのすべてが避難している場合、デーモンは、デーモンスレッドは、JVMの避難の修理を行わないで、他のスレッドにサービスを提供することです。また、JVMのスレッドの守護者として理解することができることは、自動的に(必ずしも必要ではないが)作成されたスレッドで、利用者のスレッドが作成されたスレッドプログラムではありません。JVMのガベージコレクションのスレッドは、すべてのスレッドが避難しているデーモンスレッドは、あるなど、もはやゴミ、デーモンスレッドを生成しますガベージコレクタスレッドは、Java仮想マシン上でのみ、残りのスレッドがあるとき当然、何も行わないことができ、Java仮想マシンが自動的に残しています。
拡張:スレッド情報アウトスレッドダンププリントは、デーモンであるデーモン単語を含むスレッドが、があるかもしれません:、ファイナライザデーモンプロセス参照ガードのウィンドウ+ Ctrlキーデーモン破断サービス・デーモン、コンパイル済みのデーモンリッスンプロセス、GCデーモン。

おすすめ

転載: www.cnblogs.com/fishness/p/12306064.html