Newer Version Available
複数の非同期コールアウトの実行
長時間のサービスに対して Visualforce ページから複数のコールアウトを同時に実行する場合、最大 3 つの要求を継続インスタンスに追加できます。たとえば、2 つの商品に関する在庫統計を取得するなど、サービスに対して独立した要求を実行するときに同時コールアウトを実行することがあります。
同じ継続内で複数のコールアウトを実行すると、コールアウト要求は並列に実行され、Visualforce 要求は一時停止されます。すべてのコールアウト応答が返された後にのみ、Visualforce プロセスは再開します。
次の Visualforce および Apex の例は、1 つの継続を使用して 2 つの非同期コールアウトを同時に実行する方法を示します。Visualforce ページが最初に表示されます。Visualforce ページには、コントローラのアクションメソッド startRequestsInParallel を呼び出すボタンが含まれます。Visualforce プロセスが再開すると、outputPanel コンポーネントが再度表示されます。次のパネルには、2 つの非同期コールアウトの応答が表示されます。
次の例は、Visualforce ページのコントローラクラスを示します。startRequestsInParallel メソッドは 2 つの要求を継続に追加します。すべてのコールアウト応答が返された後、コールバックメソッド (processAllResponses) が呼び出されて応答を処理します。