我正在嘗試使用Reactive Extensions(Rx)。這裏有一個小例子,我熟了起來:Rx調度程序選項已棄用
var query = from number in Enumerable.Range(1, 20) select number;
var obs = query.ToObservable(Scheduler.ThreadPool);
obs.Subscribe(Console.WriteLine);
Console.ReadLine();
當我使用Scheduler.ThreadPool
,Scheduler.NewThread
,等等,我得到這樣的警告:
System.Reactive.Concurrency.Scheduler.ThreadPool '已過時:' 這由於重構了API表面並消除了特定於平臺的依賴關係,因此不再支持該屬性。考慮使用Scheduler.Default來獲取平臺最合適的基於池的調度程序。爲了訪問特定的基於池的調度程序,請爲目標平臺添加對System.Reactive.PlatformServices程序集的引用,並在System.Reactive.Concurrency命名空間中使用適當的調度程序。有關更多信息,請參閱http://go.microsoft.com/fwlink/?LinkID=260866。
如果我按照警告的指示,我仍然會收到警告。如果我想要使用以前通過Scheduler
課程獲得的各種選項,我準備如何使用調度器?
您可以在您遵循說明的地方發佈代碼嗎? –
沒有太多發佈......我已經有了引用,Scheduler類確實來自System.Reactive.Concurrency。我不明白我需要使用其他調度程序。 – Gigi
所以你根本沒有改變代碼? Scheduler.ThreadPool已過時。如果您仍在嘗試使用它(不管您導入了哪個庫),它將會過時。我正在尋找正確的方法... –