Próbuję rozpocząć korzystanie z rozszerzeń reaktywnych (Rx). Oto mały przykład ja gotowane:Opcje narzędzia Rx Scheduler przestarzałe
var query = from number in Enumerable.Range(1, 20) select number;
var obs = query.ToObservable(Scheduler.ThreadPool);
obs.Subscribe(Console.WriteLine);
Console.ReadLine();
Gdy używam Scheduler.ThreadPool
, Scheduler.NewThread
itp, mam to ostrzeżenie:
System.Reactive.Concurrency.Scheduler.ThreadPool 'jest nieaktualny:' To Właściwość nie jest już obsługiwana z powodu refaktoryzacji powierzchni interfejsu API i eliminacji zależnych od platformy zależności. Rozważ skorzystanie z opcji Scheduler.Default w celu uzyskania najbardziej odpowiedniego harmonogramu opartego na puli. Aby uzyskać dostęp do określonego programu planującego opartego na puli, dodaj odwołanie do zestawu System.Reactive.PlatformServices dla platformy docelowej i użyj odpowiedniego harmonogramu w obszarze nazw System.Reactive.Concurrency. Aby uzyskać więcej informacji, patrz http://go.microsoft.com/fwlink/?LinkID=260866.
Jeśli postępuję zgodnie z instrukcjami ostrzegawczymi, nadal otrzymuję ostrzeżenie. Czego oczekuję od harmonogramu, jeśli chcę korzystać z różnych opcji, które były dostępne za pośrednictwem klasy Scheduler
?
Czy możesz opublikować kod, w którym postępujesz zgodnie z instrukcjami? –
Niewiele do opublikowania ... Miałem już referencję, a klasa Scheduler jest rzeczywiście z System.Reactive.Concurrency. Nie rozumiem, jakiego innego programu do planowania muszę użyć. – Gigi
Więc w ogóle nie zmieniłeś kodu? Scheduler.ThreadPool jest przestarzały. Jeśli nadal próbujesz go użyć (bez względu na bibliotekę, którą zaimportowałeś), będzie to przestarzałe. Szukam prawidłowych metod ... –