Struct leaky_bucket::AcquireOwned
source · [−]pub struct AcquireOwned(_);
Expand description
The future associated with acquiring permits from a rate limiter using
RateLimiter::acquire_owned
.
Implementations
sourceimpl AcquireOwned
impl AcquireOwned
sourcepub fn is_core(&self) -> bool
pub fn is_core(&self) -> bool
Test if this acquire task is currently coordinating the rate limiter.
Examples
use leaky_bucket::RateLimiter;
use std::future::Future;
use std::sync::Arc;
use std::task::Context;
struct Waker;
let limiter = Arc::new(RateLimiter::builder().build());
let waker = Arc::new(Waker).into();
let mut cx = Context::from_waker(&waker);
let a1 = limiter.acquire_owned(1);
tokio::pin!(a1);
assert!(!a1.is_core());
assert!(a1.as_mut().poll(&mut cx).is_pending());
assert!(a1.is_core());
a1.as_mut().await;
// After completion this is no longer a core.
assert!(!a1.is_core());
Trait Implementations
sourceimpl Future for AcquireOwned
impl Future for AcquireOwned
Auto Trait Implementations
impl !RefUnwindSafe for AcquireOwned
impl Send for AcquireOwned
impl Sync for AcquireOwned
impl !Unpin for AcquireOwned
impl !UnwindSafe for AcquireOwned
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<F> IntoFuture for F where
F: Future,
impl<F> IntoFuture for F where
F: Future,
type Output = <F as Future>::Output
type Output = <F as Future>::Output
🔬 This is a nightly-only experimental API. (
into_future
)The output that the future will produce on completion.
type Future = F
type Future = F
🔬 This is a nightly-only experimental API. (
into_future
)Which kind of future are we turning this into?
sourcepub fn into_future(self) -> <F as IntoFuture>::Future
pub fn into_future(self) -> <F as IntoFuture>::Future
🔬 This is a nightly-only experimental API. (
into_future
)Creates a future from a value.