SubscribeOnThreadPool
1. 概要
SubscribeOnThreadPool は、購読処理をスレッドプール上で実行するオペレーターです。UI スレッドをブロックせずにソースへの購読を行いたい場合に使用します。
2. シグネチャ
デフォルト
csharp
public static Observable<T> SubscribeOnThreadPool<T>(
this Observable<T> source)ソースへの購読処理をスレッドプール上で実行します。
3. マーブルダイアグラム
購読処理がスレッドプール上のスレッドで実行されます。通知の配信先は変更されません。
4. サンプルコード
csharp
// スレッドプールで購読し、UI スレッドで結果を受け取る
observable
.SubscribeOnThreadPool()
.ObserveOnCurrentSynchronizationContext()
.Subscribe(x => label.Text = x.ToString());
// ブロッキング操作を含むソースの購読をバックグラウンドで実行
blockingObservable
.SubscribeOnThreadPool()
.Subscribe(x => Console.WriteLine($"値: {x}"));