UpdatePanel に結果を表示する Web サービスを呼び出しています。Web サービスは、約 30 秒で結果を返します。~1分 この時間間隔の間、私は現在 UpdateProgress Bar を表示しています。
私の目標は、アイドル状態のプロセッサ時間を利用し、foobar() メソッドでいくつかの有用な操作を行うことです。現在のシナリオに最適な次のアプローチから -
- BeginAsync を使用して Web サービスを非同期的に呼び出し、BeginAsync がそのコールバック メソッドを呼び出すまで、他のタスクを実行し続けます。
- スレッド内に Web サービス操作を追加し、QueueUserWorkItem を使用してこのスレッドを ThreadPool にエンキューします。(この場合、WaitAny を使用する必要があります。Web サービスがデータを返すとすぐに、foobar メソッドを実行しているスレッドを終了する必要があるためです。)
- UpdataProgress コントロールがトリガーされたらメソッドをコールバックし、これが完了したときにこれを終了することが asp.net で可能かどうか疑問に思います。