pub trait Executor:
MaybeSend
+ MaybeSync
+ 'static {
type JoinHandle<R>: JoinHandle<R> + MaybeSend
where R: MaybeSend;
type Mutex<T>: Mutex<T> + MaybeSend + MaybeSync
where T: MaybeSend + MaybeSync;
type RwLock<T>: RwLock<T> + MaybeSend + MaybeSync
where T: MaybeSend + MaybeSync;
// Required methods
fn spawn<F>(&self, future: F) -> Self::JoinHandle<F::Output>
where F: Future + MaybeSend + 'static,
F::Output: MaybeSend;
fn mutex<T>(value: T) -> Self::Mutex<T>
where T: MaybeSend + MaybeSync;
fn rw_lock<T>(value: T) -> Self::RwLock<T>
where T: MaybeSend + MaybeSync;
}Required Associated Types§
type JoinHandle<R>: JoinHandle<R> + MaybeSend where R: MaybeSend
type Mutex<T>: Mutex<T> + MaybeSend + MaybeSync where T: MaybeSend + MaybeSync
type RwLock<T>: RwLock<T> + MaybeSend + MaybeSync where T: MaybeSend + MaybeSync
Required Methods§
fn spawn<F>(&self, future: F) -> Self::JoinHandle<F::Output>
fn mutex<T>(value: T) -> Self::Mutex<T>
fn rw_lock<T>(value: T) -> Self::RwLock<T>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.