JConsole を使用してアプリを一定期間監視すると、「ライブ スレッド」の数が常に増加していることがわかります。スレッド数を増やすことは私には悪いことのように聞こえますが、それは間違っていますか?
概要: このアプリでは、Executors.newFixedThreadPool、Executors.newSingleThreadScheduledExecutor を使用して、さまざまなコレクターのスレッド プールを作成します。これらのコレクターは数分ごとに呼び出されます。そして、コレクションごとに上記のコレクターによってn回呼び出されるこの他のサービスがあります。このサービスは、FutureTask を実行する単一のスレッド (Executors.newFixedThreadPool(1);) を生成します。上記のすべての ExecutorServices について、例外がキャッチされた場合にのみ shutdownNow() を呼び出し、残りは GC に任せます。
1) プロセスが終了したらエグゼキューターをシャットダウンする必要がありますか? それとも GC に頼ることができますか?
あなたの提案と洞察に感謝します