mirror of
https://github.com/tokio-rs/tokio.git
synced 2025-10-01 12:20:39 +00:00
io: document cancel safety of AsyncFd
methods (#6890)
This commit is contained in:
parent
c3a935541d
commit
679d7657dc
@ -702,6 +702,13 @@ impl<T: AsRawFd> AsyncFd<T> {
|
|||||||
/// concurrently with other methods on this struct. This method only
|
/// concurrently with other methods on this struct. This method only
|
||||||
/// provides shared access to the inner IO resource when handling the
|
/// provides shared access to the inner IO resource when handling the
|
||||||
/// [`AsyncFdReadyGuard`].
|
/// [`AsyncFdReadyGuard`].
|
||||||
|
///
|
||||||
|
/// # Cancel safety
|
||||||
|
///
|
||||||
|
/// This method is cancel safe. Once a readiness event occurs, the method
|
||||||
|
/// will continue to return immediately until the readiness event is
|
||||||
|
/// consumed by an attempt to read or write that fails with `WouldBlock` or
|
||||||
|
/// `Poll::Pending`.
|
||||||
#[allow(clippy::needless_lifetimes)] // The lifetime improves rustdoc rendering.
|
#[allow(clippy::needless_lifetimes)] // The lifetime improves rustdoc rendering.
|
||||||
pub async fn readable<'a>(&'a self) -> io::Result<AsyncFdReadyGuard<'a, T>> {
|
pub async fn readable<'a>(&'a self) -> io::Result<AsyncFdReadyGuard<'a, T>> {
|
||||||
self.ready(Interest::READABLE).await
|
self.ready(Interest::READABLE).await
|
||||||
@ -713,6 +720,13 @@ impl<T: AsRawFd> AsyncFd<T> {
|
|||||||
///
|
///
|
||||||
/// This method takes `&mut self`, so it is possible to access the inner IO
|
/// This method takes `&mut self`, so it is possible to access the inner IO
|
||||||
/// resource mutably when handling the [`AsyncFdReadyMutGuard`].
|
/// resource mutably when handling the [`AsyncFdReadyMutGuard`].
|
||||||
|
///
|
||||||
|
/// # Cancel safety
|
||||||
|
///
|
||||||
|
/// This method is cancel safe. Once a readiness event occurs, the method
|
||||||
|
/// will continue to return immediately until the readiness event is
|
||||||
|
/// consumed by an attempt to read or write that fails with `WouldBlock` or
|
||||||
|
/// `Poll::Pending`.
|
||||||
#[allow(clippy::needless_lifetimes)] // The lifetime improves rustdoc rendering.
|
#[allow(clippy::needless_lifetimes)] // The lifetime improves rustdoc rendering.
|
||||||
pub async fn readable_mut<'a>(&'a mut self) -> io::Result<AsyncFdReadyMutGuard<'a, T>> {
|
pub async fn readable_mut<'a>(&'a mut self) -> io::Result<AsyncFdReadyMutGuard<'a, T>> {
|
||||||
self.ready_mut(Interest::READABLE).await
|
self.ready_mut(Interest::READABLE).await
|
||||||
@ -726,6 +740,13 @@ impl<T: AsRawFd> AsyncFd<T> {
|
|||||||
/// concurrently with other methods on this struct. This method only
|
/// concurrently with other methods on this struct. This method only
|
||||||
/// provides shared access to the inner IO resource when handling the
|
/// provides shared access to the inner IO resource when handling the
|
||||||
/// [`AsyncFdReadyGuard`].
|
/// [`AsyncFdReadyGuard`].
|
||||||
|
///
|
||||||
|
/// # Cancel safety
|
||||||
|
///
|
||||||
|
/// This method is cancel safe. Once a readiness event occurs, the method
|
||||||
|
/// will continue to return immediately until the readiness event is
|
||||||
|
/// consumed by an attempt to read or write that fails with `WouldBlock` or
|
||||||
|
/// `Poll::Pending`.
|
||||||
#[allow(clippy::needless_lifetimes)] // The lifetime improves rustdoc rendering.
|
#[allow(clippy::needless_lifetimes)] // The lifetime improves rustdoc rendering.
|
||||||
pub async fn writable<'a>(&'a self) -> io::Result<AsyncFdReadyGuard<'a, T>> {
|
pub async fn writable<'a>(&'a self) -> io::Result<AsyncFdReadyGuard<'a, T>> {
|
||||||
self.ready(Interest::WRITABLE).await
|
self.ready(Interest::WRITABLE).await
|
||||||
@ -737,6 +758,13 @@ impl<T: AsRawFd> AsyncFd<T> {
|
|||||||
///
|
///
|
||||||
/// This method takes `&mut self`, so it is possible to access the inner IO
|
/// This method takes `&mut self`, so it is possible to access the inner IO
|
||||||
/// resource mutably when handling the [`AsyncFdReadyMutGuard`].
|
/// resource mutably when handling the [`AsyncFdReadyMutGuard`].
|
||||||
|
///
|
||||||
|
/// # Cancel safety
|
||||||
|
///
|
||||||
|
/// This method is cancel safe. Once a readiness event occurs, the method
|
||||||
|
/// will continue to return immediately until the readiness event is
|
||||||
|
/// consumed by an attempt to read or write that fails with `WouldBlock` or
|
||||||
|
/// `Poll::Pending`.
|
||||||
#[allow(clippy::needless_lifetimes)] // The lifetime improves rustdoc rendering.
|
#[allow(clippy::needless_lifetimes)] // The lifetime improves rustdoc rendering.
|
||||||
pub async fn writable_mut<'a>(&'a mut self) -> io::Result<AsyncFdReadyMutGuard<'a, T>> {
|
pub async fn writable_mut<'a>(&'a mut self) -> io::Result<AsyncFdReadyMutGuard<'a, T>> {
|
||||||
self.ready_mut(Interest::WRITABLE).await
|
self.ready_mut(Interest::WRITABLE).await
|
||||||
|
Loading…
x
Reference in New Issue
Block a user