2
2つのデーモンスレッドへの参照を保持するオブジェクトがあります。私はそれが初期化されていないコーナーケースを考慮しているので、私はファイナライザが必要かどうか判断することができます。 detinitializingの関数は、スレッドを停止します。私は先に行くと、ちょうどファイナライザを追加しますが、私は好奇心ができます生きているスレッドへの参照を保持するオブジェクトのガベージコレクション
上記のスレッドが生きている間、オブジェクトがガベージコレクト取得することはできますか?
ガベージコレクションを取得できる場合は、スレッドは中断されますか?あなたはファイナライズにスレッドを停止するべきではありません
通常の場合、ユーザーは適切にdisconnect()し、スレッド(I/Oを処理する)は停止します。私は、断線が適切に行われていない場合を考えていました。 – shikhar
それでは、一緒に行かなければならないと思います...キープアライブチェック? 「応答なし」のタイムアウト後、スレッドは強制終了されます。これは、GCと比較して、非常に決定的であるためです。 –
あなたは精巧にできますか? "応答なし"から? btw、ここにコードはあります:http://code.google.com/p/commons-net-ssh/source/browse/src/main/java/org/apache/commons/net/ssh/trans/Transport.java #80 – shikhar