Javaアプリケーションでサブスクリプションを実装しました。新しいサブスクライバを追加すると、アプリケーションが新しいタスク(Runnable
を実装するクラス別のスレッドで実行される)、それをExecutorService
のように追加されたを作成します。あなたが望む限り多くの加入者を登録することがExecutorServiceに送信されたRunnableを停止します
public void Subscribe()
{
es_.execute(new Subscriber(this, queueName, handler));
}
//...
private ExecutorService es_;
アプリケーション。今私はUnsubscribe
のようなものを実装したいので、すべてのサブスクライバはメッセージフローを停止することができます。ここでは、ExecutorService
で実行中のタスクの1つを停止する方法が必要です。しかし、私はこれをどうやってできるのか分かりません。
ExecutorService.shutdown()
とその変形は私のためではありません。すべてのタスクを終了します。そのうちの1つを終了するだけです。私は解決策を探しています。可能な限り簡単です。ありがとう。
答えを編集して簡単な例を追加すると便利です。私はドキュメントとgoogleのすべてのものを見つけることができますが、答えは私だけではなく、他の人のためにすぎません。これはいくらか(貴重な)時間を節約することができます。 – maverik
ここでは簡単な例を示します –
ありがとうございます。これは本当に役に立ちます。 – maverik