サスペンドスレッドをすべて取得して終了するにはどうすればいいですか?ほとんどの時間中停止されているTImer-0という名前のスレッドを起動するWebアプリケーションを作成しています。 SEVERE:Webアプリケーション[/ LoggingMonitor]が名前付きスレッドを開始したようです[Timer-0]が停止しませんでした。これはメモリリークを引き起こす可能性が非常に高いです。サスペンドスレッドをキルしてください
2
A
答えて
2
スレッドを一時停止したくない場合は、プロセス全体が停止する可能性があります。たとえスレッドを一時停止していても、スレッドを停止することは役に立ちません。
Timer-n
java.util.Timer
のように聞こえます。これは、cancel
を呼び出すことで解決できます。メモリリークが発生していない限り、最終的にスレッドを収集する必要があります(finalizer
でキャンセル)。
2
スレッドを強制終了せず、代わりに使用するリソース(gcによって解放されたメモリ)を解放して、スケジューラが停止させるようにしてください。 Thread.stopは廃止予定です(サスペンドと同様)。
スレッドを手動で停止する必要がある場合は、hereまたはhere in the answersのようなフラグを使用してください。
関連する問題
- 1. サスペンドスレッドのC++スレッドプール
- 2. をしてください
- 3. コードを短くしてください
- 4. をクリックしてください<th>をクリックしてください:<th>を100%の幅と高さに設定してください
- 5. ハイバネートマッピングの問題に助けてください...リードしてください! :)
- 6. AS3のcolormatrixで着色してください - 助けてください!
- 7. キルSEM
- 8. キルPHP
- 9. C#コンボイロックを試してください
- 10. バルーントレイアイコンをクリックしてください
- 11. ユーザエージェントを変更してください
- 12. Observable Listをリセットしてください
- 13. name_suffixを確認してください
- 14. ModalPopupExtender OnClickをバイパスしてください
- 15. C#マウスイベントを押してください
- 16. ラスタエクステントを変更してください
- 17. リンクをクリックしてくださいPhantomJS
- 18. org.eclipse.jdt.core.dom.ASTPArserを変更してください
- 19. を入力してください。
- 20. ログインセキュリティを外してください
- 21. JSQMessagesViewControllerメッセージアクションをクリックしてください
- 22. "と¥"を交換してください
- 23. オンラインデータベースを照会してください
- 24. DISTINCTを選択してください。
- 25. テキストノードを置換してください
- 26. バッファストラテジーを理解してください
- 27. Primefaces:LazyDataModelを実装してください
- 28. SQL:URLを確認してください
- 29. ServiceStack:DefaultNoProfileImgUrlを変更してください
- 30. mongoDbをリクエストしてください。
Thread.suspendで中断されていますか?それとも、一般的に何の活動もしていないということですか? – Tudor
これは以下のフォローアップです:http://stackoverflow.com/questions/8677008/catalina-out-memory-leak-error – oers
コンテナにスレッドを管理させます。長期的には痛みを救うでしょう。 –