2017-09-14 14 views
0

Tomcatをシャットダウンするたびに次のメッセージが表示されます。Tomcat 7シャットダウン時のメモリリーク警告

SEVERE [localhost-startStop-2] org.apache.catalina.loader.WebappClassLoader.clearReferencesThreads Webアプリケーション[/ xxx]が[xxxxx]という名前のスレッドを開始したように見えますが、停止できませんでした。これはメモリリークを引き起こす可能性が非常に高いです。

なぜメッセージが生成され、どのように解決できますか?

答えて

0

このメッセージはなぜ生成されますか?

Webアプリケーション[/ xxxは] [XXXXX]という名前のスレッドを開始しているように見えますが、それを止めることができませんでした。これはメモリリークを引き起こす可能性が非常に高いです。

どうすれば解決できますか?

あなたの質問には、スレッド名の匿名化が成功しました。私はそれがあなたのwebappがバックグラウンドで(あなたのコードではないかもしれないが、いくつかのライブラリのコードで)始まったスレッドだと仮定することができます。アプリケーションのアンデプロイ時には、アプリケーションをシャットダウンするか、バックグラウンドスレッドの使用を停止する必要があります。エグゼキュータの使用を通じて。

実行中のTomcatにアプリケーションをホットデプロイしない場合は、無視してください。このメッセージは、tomcatのシャットダウン時にのみ表示されます。 tomcatが実際にシャットダウンしない場合は、このスレッドをデーモンにして、メインスレッドが終了したときにJVMがシャットダウンするようにする必要があります。これは非常に実用的ですが、悪いスタイルです。

関連する問題