2
나는 .for_each()
이 트릭을한다고 가정하지만 채널에서 첫 번째 (미래) 항목 만 반환 한 다음 채널이 비어 있으면 반환합니다. .for_each()
이 아닌 Tokio/future 컨텍스트에서 수행 할 작업에서 무한정 채널을 읽는 방법은 무엇입니까?Rust Tokio 작업에서 무기한으로 무제한으로 읽는 방법?
let tx_origs_reader = rx_chan.for_each(move |tx_orig| {
//save receiver side tx to db
let mut tx_origs_once = tx_origs_inner.borrow_mut();
tx_origs_once.push(tx_orig.clone());
Ok(())
});
handle.spawn(tx_origs_reader.then(|err| {
println!("This returns after first item without an error {:?}", err);
Ok(())
}));
스택 오버플로에 오신 것을 환영합니다! 귀하가 [MCVE]를 제공하면 귀하의 질문은 합리적인 시간 내에 답변 될 가능성이 더 높습니다. 지금 당장은 각 잠재 응답자가 처음부터 완전한 프로그램을 구성해야합니다 ** ** 표시된 모든 변수의 유형을 추측합니다 **. – Shepmaster