0
私はTを返す長い実行同期関数を持つクラスを持っています。これをIObservableに変更して非同期にしたいのです。関数が実行されている間は何も起こりません。次にOnNext(T) - > OnCompleted()が実行されます。これを実装する最も簡単な方法は何ですか?<T>をIObservableにする方法<T>
次のような作品がありますが、私はもっと素敵なものが欠けていると思われます。
public IObservable<bool> TakesAWhile()
{
var s = new Subject<bool>();
var worker = new BackgroundWorker();
worker.DoWork += (sender, e) =>
{
s.OnNext(foo.TakesAWhile());
s.OnCompleted();
};
worker.RunWorkerAsync();
return s.AsObservable<bool>();
}
パーフェクト、しかしスタートにスケジューラを追加
はこのような何かを試してみてください。 –