ExecutorService
固定スレッドプールと IBM MQ メッセージングを使用して、プロデューサーとコンシューマーに似たコードを作成する予定です。
コンシューマとして 10 個の固定スレッドを作成したとします。コンシューマ キューに 10 個のメッセージを配置すると、どのように処理されますか? 10 個のコンシューマー ワーカー スレッドは、以下のシナリオをどのようにカバーしますか?
各ワーカースレッドは単一のメッセージを同期的に受け取り、メッセージを処理しますか?
各コンシューマー ワーカー スレッドは、1 つのメッセージにつき 1 つのワーカー スレッドのように、これら 10 個のメッセージすべてを受け取りますか?
上記の 2 番目のシナリオとしてこのメッセージを読んだ後、各スレッドがエグゼキュータ サービスを呼び出す方法。
キューに 20 個のメッセージがある場合、コンシューマー ワーカー スレッドはこれらのメッセージをどのように受け取りますか?各スレッドは 2 つのメッセージを受け取りますか? 1 つのスレッドに 1 つのメッセージが必要な場合、他の 10 個のメッセージはどうなりますか?
上記のシナリオの処理中に、Web サービス呼び出しと内部 API メソッド呼び出しがありますが、これらは同期メソッドです。このクラスを実装してコードを同時に処理する場合、使用法はありますか?