スレッド プール

スレッド プール (TP) は、そのプール内のスレッドによるアクティビティ (スリープを含む) を自動化します。プール内の各スレッドは、個別の自動アクティビティを制御します。スレッド プールは、同期マップに関連付けることもできます。

TotalAgility には、キャプチャおよび非キャプチャ自動アクティビティ用のデフォルトのスレッド プールが用意されています。

デフォルトのスレッド プールには 16 個のスレッドが含まれており、これは TotalAgility が一度に 16 個の自動アクティビティを実行できることを意味します。追加のアクティビティはスレッド プール キュー (TPQ) にキューイングされ、先着順で実行されます。名前を変更したり、デフォルトのスレッド プールを削除したりすることはできませんが、他の設定を変更したり、複数のスレッド プールを作成したりできます。

スレッド プールの追加」を参照してください。

複数のスレッド プールには、次の利点があります。

  • 長時間実行されるアクティビティを別のスレッド プールに配置できます。これにより、長時間実行されるアクティビティにより他の短時間実行されるアクティビティに遅延が発生することを防ぎます。たとえば、2 つのスレッド プールがある場合、スレッド プール 1 の短時間実行アクティビティは、スレッド プール 2 の長時間実行アクティビティの完了を待機せずに実行されます。

  • 同時呼び出しの数を制御することで、サイトのサイズを縮小して、潜在的なパフォーマンスの遅延を最小限に抑えられます。これは、同時呼び出し数に制限のあるライセンスを持つサードパーティのオブジェクト メソッドを自動アクティビティで使用する場合に役立ちます。たとえば、電子メール サーバーは一度に 10 件の同時通話しか処理できないといった場合に、これらの自動電子メール アクティビティの処理を効率的に処理するために、10 個のスレッドでスレッド プールを設定できます。

スレッド プールを作成すると、これらのスレッド プールをプロセスで使用できます。

重要 スレッド プールをサポートするのはオンプレミスの TotalAgility のみで、オンプレミス マルチテナント環境または Azure 環境で実行される TotalAgility ではサポートされていません。