문제

나는 관찰 가능한 항목을 구축하고 있습니다. 위치정보 이벤트는 UI 스레드에서 구독되어야 합니다.

~이다 ObserveOnDispatcher 더 이상 사용되지 않습니까?

도움이 되었습니까?

해결책

ObserveOnDispatcher() 더 이상 사용되지 않지만 Paul이 말했듯이 일반적으로 명시적인 스케줄러를 제공하여 TestScheduler 단위 테스트용.

DispatcherScheduler.Current 전류를 얻는 데 사용할 수 있습니다. DispatcherScheduler - 아니다 .Instance, 실제로는 둘 이상이 있을 수 있으므로 의미가 있습니다. 비록 대부분의 사람들이 특정 경로를 따라갈 필요는 없지만!

ObserveOnDispatcher() 그리고 DispatcherScheduler Windows Phone 8 Rx 빌드에 있습니다.그들은에 있습니다 rx-xaml xaml 플랫폼 특정 요소를 포함하는 nuget 패키지 - 방금 포함했다면 이 패키지를 놓쳤을 것입니다. rx-main.

구체적으로, 그들은 다음과 같은 지역에 위치하고 있습니다. System.Reactive.Windows.Threading.dll 집회. ObserveOnDispatcher() 에 있습니다 System.Reactive.Linq.DispatcherObservable 유형이 있고 어셈블리에도 System.Reactive.Concurrency.DispatcherScheduler.

다른 팁

나는 보통 다음과 같이 씁니다:

.ObserveOn(DispatcherScheduler.Instance)

내가 사용하지 않는다면 반응형UI.내가 그렇다면, 그것은

.ObserveOn(RxApp.MainThreadScheduler)

차이점은 단위 테스트 실행기에서는 RxApp.MainThreadScheduler 자동으로 조작되어 CurrentThread, 따라서 단위 테스트가 통과됩니다. 그렇지 않으면 모두 중단됩니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top