Struct futures_util::future::Shared [−][src]
Future for the shared
method.
Implementations
impl<Fut> Shared<Fut> where
Fut: Future,
Fut::Output: Clone,
[src]
Fut: Future,
Fut::Output: Clone,
pub fn peek(&self) -> Option<&Fut::Output>
[src]
Returns Some
containing a reference to this Shared
’s output if
it has already been computed by a clone or None
if it hasn’t been
computed yet or this Shared
already returned its output from
poll
.
pub fn downgrade(&self) -> Option<WeakShared<Fut>>
[src]
Creates a new WeakShared
for this Shared
.
Returns None
if it has already been polled to completion.
pub fn strong_count(&self) -> Option<usize>
[src]
Gets the number of strong pointers to this allocation.
Returns None
if it has already been polled to completion.
Safety
This method by itself is safe, but using it correctly requires extra care. Another thread can change the strong count at any time, including potentially between calling this method and acting on the result.
pub fn weak_count(&self) -> Option<usize>
[src]
Gets the number of weak pointers to this allocation.
Returns None
if it has already been polled to completion.
Safety
This method by itself is safe, but using it correctly requires extra care. Another thread can change the weak count at any time, including potentially between calling this method and acting on the result.
Trait Implementations
impl<Fut> Clone for Shared<Fut> where
Fut: Future,
[src]
Fut: Future,
fn clone(&self) -> Self
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl<Fut: Future> Debug for Shared<Fut>
[src]
impl<Fut> Drop for Shared<Fut> where
Fut: Future,
[src]
Fut: Future,
impl<Fut> FusedFuture for Shared<Fut> where
Fut: Future,
Fut::Output: Clone,
[src]
Fut: Future,
Fut::Output: Clone,
fn is_terminated(&self) -> bool
[src]
impl<Fut> Future for Shared<Fut> where
Fut: Future,
Fut::Output: Clone,
[src]
Fut: Future,
Fut::Output: Clone,
type Output = Fut::Output
The type of value produced on completion.
fn poll(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Self::Output>
[src]
impl<Fut: Future> Unpin for Shared<Fut>
[src]
Auto Trait Implementations
impl<Fut> !RefUnwindSafe for Shared<Fut>
impl<Fut> Send for Shared<Fut> where
Fut: Send,
<Fut as Future>::Output: Send + Sync,
Fut: Send,
<Fut as Future>::Output: Send + Sync,
impl<Fut> Sync for Shared<Fut> where
Fut: Send,
<Fut as Future>::Output: Send + Sync,
Fut: Send,
<Fut as Future>::Output: Send + Sync,
impl<Fut> !UnwindSafe for Shared<Fut>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<F> IntoFuture for F where
F: Future,
[src]
F: Future,
type Output = <F as Future>::Output
into_future
)The output that the future will produce on completion.
type Future = F
into_future
)Which kind of future are we turning this into?
pub fn into_future(self) -> <F as IntoFuture>::Future
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<F, T, E> TryFuture for F where
F: Future<Output = Result<T, E>> + ?Sized,
[src]
F: Future<Output = Result<T, E>> + ?Sized,
type Ok = T
The type of successful values yielded by this future
type Error = E
The type of failures yielded by this future
pub fn try_poll(
self: Pin<&mut F>,
cx: &mut Context<'_>
) -> Poll<<F as Future>::Output>
[src]
self: Pin<&mut F>,
cx: &mut Context<'_>
) -> Poll<<F as Future>::Output>
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,