5

マルチスレッド Java アプリケーションで、あるスレッドから別のスレッドへのコンテキストの切り替えが発生する命令を特定したい場合、どの方法が最適ですか? どのスレッドが命令を実行しているかを識別するためにすべての命令を計測すると、近似値が得られます。たとえば、インストルメンテーションが実行された後、実際のインストルメントの前に切り替えが発生した場合。が実行されると、結果は不正確になります。

  • Javaでコンテキストスイッチの場所(実行ごとに異なる)を正確に特定する方法はありますか?

  • これを特定するのに最も費用対効果の高いものは何ですか?

4

2 に答える 2

1

あなたの質問に対する簡単な答えYou can not do it in javaは、基盤となるオペレーティング システムとメモリ モデルに基づいてコンテキストを切り替える JVM の責任です。

http://en.wikipedia.org/wiki/Thread_(コンピューティング)

于 2013-09-23T16:21:18.487 に答える
0

ほとんどのコンテキスト切り替えは、外部割り込み (タイマーを含む) によって引き起こされます。指導時に起こりanyます。実際、分布は均一ではなく、非常にランダムです。命令ごとにコンテキスト切り替えの確率分布を収集できたとしても、それをどのように使用しますか? 不十分な手段で問題を解決しようとしているようです。あなたの本当の問題が何であるかをよりよく伝えてください。私たちは解決策を提案しようとします.

于 2013-09-23T17:12:29.923 に答える