2011-07-28 15 views
1

私たちには、.net Webサービスを呼び出すwinformsクライアントアプリケーションがあり、これはさらにSQL Server SPを呼び出します。ある特定の機会に、私たちはサーバー上で重いバッチ処理を行うspを呼び出しています。 SQL Serverのspが実行されている間にwinformクライアントで進行状況を更新する方法はありますか? 私はすべてのバッチ処理を行う私の主なWebメソッドを非同期に呼び出すことを考えました。別のスレッドで別のWebメソッドを呼び出すと、定期的にサーバに問い合わせて進行状況を知ることができます。これは可能ですか?これを達成するための他の方法がありますか? アドバイスをお願いします。winformクライアントでSQL Server SPの進行状況を表示するにはどうすればよいですか?

ありがとうございます。

答えて

1

私はあなたの提案と同様の方法を使用する前にこれを行っています。ストアド・プロシージャは、実行中のステータス・テーブルを更新し、他のスレッドはそのステータス・テーブルにNOLOCKヒントを問い合わせます。この方法で見つけた興味深いのは、トランザクションで作業が行われていて、トランザクションがロールバックされると、ステータスバーはロールバックされて逆方向に実行されることです。しかし、パフォーマンス上の理由から、大量の作業を単一のトランザクションで行うべきではありません。

関連する問題