/// Verifies that the default implementation of `poll_read_vectored` /// calls `poll_read` with an empty slice if no buffers are provided. #[test] fn read_vectored_no_buffers() { letmut reader = MockReader::new(|buf| {
assert_eq!(buf, b"");
Err(io::ErrorKind::BrokenPipe.into()).into()
}); let cx = &mut panic_context(); let bufs = &mut [];
let res = Pin::new(&mut reader).poll_read_vectored(cx, bufs); let res = res.map_err(|e| e.kind());
assert_eq!(res, Poll::Ready(Err(io::ErrorKind::BrokenPipe)))
}
/// Verifies that the default implementation of `poll_read_vectored` /// calls `poll_read` with the first non-empty buffer. #[test] fn read_vectored_first_non_empty() { letmut reader = MockReader::new(|buf| {
assert_eq!(buf.len(), 4);
buf.copy_from_slice(b"four");
Poll::Ready(Ok(4))
}); let cx = &mut panic_context(); letmut buf = [0; 4]; let bufs = &mut [
io::IoSliceMut::new(&mut []),
io::IoSliceMut::new(&mut []),
io::IoSliceMut::new(&mut buf),
];
let res = Pin::new(&mut reader).poll_read_vectored(cx, bufs); let res = res.map_err(|e| e.kind());
assert_eq!(res, Poll::Ready(Ok(4)));
assert_eq!(buf, b"four"[..]);
}
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.8 Sekunden
(vorverarbeitet am 2026-06-19)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.