pub struct TokioBlockingTaskStrategy();
Available on crate feature tokio only.
Expand description

Strategy which spawns a new ‘blocking’ tokio task which drops the contained value.

This only works within the context of a Tokio runtime. (Dropping objects constructed with this strategy while no Tokio runtime is available will result in a panic!)

This strategy is similar to TokioTaskStrategy but uses tokio::task::spawn_blocking instead. This makes sure that the ‘fast async tasks’ thread pool can continue its normal work, because the drop work is passed to the ‘ok to block here’ thread pool.

Benchmark to find out which approach suits your scenario better!

Trait Implementations§

source§

impl<T: Send + 'static> BackdropStrategy<T> for TokioBlockingTaskStrategy

source§

fn execute(droppable: T)

Called whenever T should be dropped. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

const: unstable · source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.