2011-03-22 9 views
5

私はいくつかのスレッドを持つJavaアプリケーションを開発しています。例えば17,18,19などのスレッドIDをコンソールに表示します。 しかし、私はデバッグパースペクティブを開いているとき、私は現在のスレッドを表示するが、[スレッド2]、[スレッド3]を使用して、この "デバッグ"ウィンドウ(ほとんど左上のウィンドウ)を持っています。その数は必ずしもThreadIdsと一致しません。Eclipse Debug Perspectiveでスレッドを識別する方法は?

「デバッグ」ウィンドウに表示されたスレッドに、自分のコンソールで取得したスレッドIDを関連付ける方法はありますか?

答えて

6

私はそれを行う方法がわかりません。

ただし、別のアプローチがあります。これらのスレッド名は、使用しているスレッドコンストラクタによって自動的に生成されます。ただし、Thread.setName()というメソッドがあり、スレッドの名前を変更することができます。スレッドのIDと一致するように作成するスレッドの名前を変更するために、アプリケーションを調整する可能性があります。

3

ありEclipseのようなものは何もありませんが、あなたは、コードのデバッグポイントを追加し、現在実行中のスレッドを、見つけるために

Thread.currentThread(); 

を呼び出したスレッド、検索する場合。

同じことの詳細については、このスレッドをご覧ください。

http://dev.eclipse.org/mhonarc/lists/platform-debug-dev/msg00845.html

1

代わりのスレッドIDを印刷するには、スレッド名を印刷することができます。 Thread.currentThread().getName()。これはデバッガに表示される名前です。

+0

スティーブンCの回答に似ていますが、これは正解であるとマークする必要があります。これははるかに簡潔です。 –

関連する問題