pub struct AsyncTask<P: AsyncTaskPoolExt<O> + AsyncTaskPool<O>, O: Default + 'static = ()> { /* private fields */ }
Expand description
异步任务
Implementations§
Source§impl<P: AsyncTaskPoolExt<O> + AsyncTaskPool<O, Pool = P>, O: Default + 'static> AsyncTask<P, O>
impl<P: AsyncTaskPoolExt<O> + AsyncTaskPool<O, Pool = P>, O: Default + 'static> AsyncTask<P, O>
Sourcepub fn new(
uid: TaskId,
pool: Arc<P>,
priority: usize,
future: Option<BoxFuture<'static, O>>,
) -> AsyncTask<P, O>
pub fn new( uid: TaskId, pool: Arc<P>, priority: usize, future: Option<BoxFuture<'static, O>>, ) -> AsyncTask<P, O>
构建单线程任务
Sourcepub fn with_context<C: 'static>(
uid: TaskId,
pool: Arc<P>,
priority: usize,
future: Option<BoxFuture<'static, O>>,
context: C,
) -> AsyncTask<P, O>
pub fn with_context<C: 'static>( uid: TaskId, pool: Arc<P>, priority: usize, future: Option<BoxFuture<'static, O>>, context: C, ) -> AsyncTask<P, O>
使用指定上下文构建单线程任务
Sourcepub fn with_runtime_and_context<RT, C>(
runtime: &RT,
priority: usize,
future: Option<BoxFuture<'static, O>>,
context: C,
) -> AsyncTask<P, O>where
RT: AsyncRuntime<O, Pool = P>,
C: Send + 'static,
pub fn with_runtime_and_context<RT, C>(
runtime: &RT,
priority: usize,
future: Option<BoxFuture<'static, O>>,
context: C,
) -> AsyncTask<P, O>where
RT: AsyncRuntime<O, Pool = P>,
C: Send + 'static,
使用指定异步运行时和上下文构建单线程任务
Sourcepub fn is_enable_wakeup(&self) -> bool
pub fn is_enable_wakeup(&self) -> bool
检查是否允许唤醒
pub fn exist_context(&self) -> bool
pub fn get_context<C: Send + 'static>(&self) -> Option<&C>
pub fn get_context_mut<C: Send + 'static>(&self) -> Option<&mut C>
pub fn set_context<C: Send + 'static>(&self, new: C)
pub fn get_pool(&self) -> &P
Trait Implementations§
Source§impl<P: AsyncTaskPoolExt<O> + AsyncTaskPool<O, Pool = P>, O: Default + 'static> ArcWake for AsyncTask<P, O>
impl<P: AsyncTaskPoolExt<O> + AsyncTaskPool<O, Pool = P>, O: Default + 'static> ArcWake for AsyncTask<P, O>
Source§impl<P: AsyncTaskPoolExt<O> + AsyncTaskPool<O>, O: Default + 'static> Drop for AsyncTask<P, O>
impl<P: AsyncTaskPoolExt<O> + AsyncTaskPool<O>, O: Default + 'static> Drop for AsyncTask<P, O>
impl<P: AsyncTaskPoolExt<O> + AsyncTaskPool<O>, O: Default + 'static> Send for AsyncTask<P, O>
impl<P: AsyncTaskPoolExt<O> + AsyncTaskPool<O>, O: Default + 'static> Sync for AsyncTask<P, O>
Auto Trait Implementations§
impl<P, O = ()> !Freeze for AsyncTask<P, O>
impl<P, O = ()> !RefUnwindSafe for AsyncTask<P, O>
impl<P, O> Unpin for AsyncTask<P, O>
impl<P, O = ()> !UnwindSafe for AsyncTask<P, O>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more