Progress<T>
을 매개 변수로 사용하고 내부적으로 진행률을보고하는 메서드가 있습니다.진행 <T> WPF 업데이트 용 버퍼링
작업자 스레드에서 빠르게 진행 (예 : 초당 수 백 회) 할 수 있으므로이를 버퍼링 한 다음 수신 한 레코드로보기 모델을 업데이트해야합니다. 매 30 초.
과거에는 Observable.FromEventPattern().Buffer(TimeSpan)
을 사용 했으므로 Progress<T>
이벤트를보고 할 경우 동일한 Rx 메커니즘을 사용할 수 있습니다. 그러나 그것은 과잉처럼 보일 것입니다. 보다 우아한 솔루션이 있습니까?
TPL Dataflow의 BufferBlock
도 살펴 봤지만 시간 기반 버퍼링을 지원하는지 잘 모르겠습니다. 매 30 초.
예를 든 사람이 있으면 게시하십시오. 대단히 감사하겠습니다.
'BufferBlock'에는 이에 대한 지원이 없습니다. 당신은 타이머에서 'BatchBlock'을 사용하고 ['TriggerBatch()'] (http://msdn.microsoft.com/en-us/library/hh160310)를 호출 할 수 있습니다,하지만 Rx가 더 나은 선택이라고 생각합니다. – svick
귀하의 의견을 보내 주셔서 감사합니다. Rx와 함께 갔어. –