BackgroundWorkerまたはThreadを使用して、ビジネスレイヤーにあるクラスのWindowsフォームからメソッドを呼び出したいと思います。このビジネスレイヤーのメソッドは、完了するまでに時間がかかる場合があるため、誰かが聞いている場合にその進行状況を報告できるようにしたいと思います。私はBackgroundWorkerから始めて、後で通常のスレッドを使用することにしたので、どちらにも縛られたくありません。
バックグラウンドワーカーによって呼び出されたかどうかを知らない場合、メソッドが進行状況を報告するための最良の方法は何でしょうか。私は自分のビジネスレイヤークラスで、誰かが聞いている場合にその進捗状況を公開できるイベントを提供することを考えていました。
そのためのフレームワークにすでに代理人がいますか?より良い、しかし私が実装できるインターフェース-INotifyProgressChangedのようなもの?