-XX:+PrintGCApplicationStoppedTime
オプションとオプションを使用-XX:+PrintGCApplicationConcurrentTime
して、gc ロギングをオンにしています。
しかし、コマンドPrintGCApplicationStoppedTime
を介して印刷された gc ログの実際の詳細を4 0r 5 印刷した後であることがわかりました。-XX:+PrintGCDetails
定義によりPrintGCApplicationStoppedTime
、すべての gc のアプリケーション停止時間を出力します。
しかし、以下に示す例のように印刷される理由は明確ではありません。
そのせいか
PrintGCApplicationStoppedTime
安全なポイントに到達するたびに印刷するだけです
(また)
ログ ファイルは、さまざまな gc スレッドによって記録されます。フルGCには同時スイープを使用し、若い世代にはParNewを使用しています
私のアプリケーションは Web アプリケーションです。
O/p パターン - 私はこのようになっています:
Application time: 0.3847031 seconds
Total time for which application threads were stopped: 0.3135419 seconds
Application time: 0.1520723 seconds
Total time for which application threads were stopped: 0.1993920 seconds
Application time: 0.1188219 seconds
Total time for which application threads were stopped: 0.1993920 seconds
Application time: 0.1188219 seconds
Total time for which application threads were stopped: 0.1993920 seconds
Application time: 0.1188219 seconds
Total time for which application threads were stopped: 0.1993920 seconds
Application time: 0.1188219 seconds
1.229: [GC 1.229: [ParNew: 256000K->51200K(256000K), 0.1509756 secs] 426536K->334728K(997376K), 0.1510198 secs] [Times: user=0.85 sys=0.07, real=0.15 secs]