質問

実際に稼働しているスレッドの数を監視し、私のscalaアクターを実行する方法はありますか?

役に立ちましたか?

解決

これを適切に行う唯一の方法は、デフォルトでアクタースレッドにアクター固有の名前またはスカラ固有の名前がないため、アクターサブシステムに独自の executor を挿入することです使用しているScalaのバージョンに応じて、 Thread-N または pool-N-thread-M と呼ばれます。

Philip Haller 独自の使用に関する指示 executor。必要に応じてスレッドの使用状況を監視するか、少なくとも作成されたスレッドに名前を付けます。スレッドの命名をオーバーライドする場合は、標準のJavaシステムMBean(つまり ThreadMXBean )を使用して、プログラムで(またはJConsole / JVisualVMを介して)スレッドを監視します。

システムプロパティを使用してデフォルトのメカニズムを制御できることに注意してください:

  • actors.minPoolSize
  • actors.maxPoolSize
  • actors.corePoolSize

他のヒント

VisualVM を試すことができます。ツール(Sunから無料で入手可能)。とりわけ、実行中のJVMのスレッドを監視できます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top