0

私はJavaが初めてで、しばらくしてからサーバーを実行するとCPUが100%使用される理由を調べる必要があります。このアプリケーションでスレッドが何をしているのかを確認する必要があると思います。Service を停止したかったので、5605 番目のスレッドが開始されました。どのスレッドを停止するかしないか、または実行時間が長すぎるかを制御するにはどうすればよいですか?

ありがとう。

4

2 に答える 2

0

*nix 環境を使用している場合は、最初にプロセス ID を見つけてください。

  1. プロセス ID を取得します。ps -ef | grep "ジャバ"
  2. スレッド ダンプを取得します。kill -3 プロセス ID
  3. サーバーログを調べて、そこにあるスレッドを調べます。「ブロッキング」スレッドがある場合、それらは犯人であり、スタックトレースを見て、いくつかの手がかりを得ることができます。
于 2012-04-04T12:40:16.297 に答える
0

The server and client jvms (Java Virtual Machine) are different. The client thinking is basically "you will be one among other dudes trying to use the same resources". The server thinking is "go ahead, you got all the playground for yourself".

于 2012-04-04T12:26:08.967 に答える