나는 두 가지가 있습니다 : Task<TResult> query
및 IObservable<bool> toggle
을 반환하는 함수. 내가 만들고자하는 것은 IObservable<TResult>
이고, toggle
이 true
이 될 때마다 매번 query
을 호출하는 무한 루프를 시작하고 그 결과를 반환합니다. 그런 다음 false
을 토글하면 무한 루프가 중지됩니다.작업 함수에서 무한대 IObservable 및 관찰 가능 토글
작업에서 무한 루프를 만드는 방법을 읽었지 만, toggle
켜고 끄는 방법을 알아낼 수 없습니다. 또한 무한 루프에서 query
을 실행할 수 없으며 필터링 만 할 수 있습니다. toggle
이 false
인 경우 쿼리를 호출하면 안됩니다. 또한 toggle
이 false가되면 좋겠지 만 query
이 이미 시작된 경우 결과 관찰 가능이 반환되지 않습니다. toggle
이 거짓 일 때 query
을 취소하는 것도 좋은 생각 일 수도 있지만 필수는 아닙니다.
그리고 자동으로 테스트 할 수 있기를 바랍니다. 내가 생각
덕분에,이 예상대로 작동하는 것 같다. – Euphoric
안녕하세요, 당신을 귀찮게해서 미안하지만, 내 후속 질문을 보시겠습니까 : http://stackoverflow.com/questions/39993609/infinite-iobservable-from-task-function-and-toggle-observable-with-parameters – Euphoric
이 함수에 대한 테스트를 작성하려고합니다. 나는 Obscvable.FromAsync (() => SomeFunction())을'Func> query (단 하나의 항목을 반환하는 cold observable) 호출로 대체 했으므로'TestScheduler'를 사용하여이 함수를 테스트 할 수 있습니다. 하지만'scheduler.Start' 메소드가 메시지를 반환하지 않는 문제가 있습니다. 이 방법을 자동으로 테스트 할 수 있는지 확인할 수 있습니까? –
Euphoric