pub struct Manager(/* private fields */);
Expand description
A manager for tasks.
Implementations§
Source§impl Manager
impl Manager
Sourcepub async fn spawn<FunctionType, FutureType, ReturnType>(
&'static self,
parent_task: TaskIdentifier,
name: &str,
spawner: Option<usize>,
function: FunctionType,
) -> Result<(JoinHandle<ReturnType>, TaskIdentifier)>where
FunctionType: FnOnce(TaskIdentifier) -> FutureType + 'static,
FutureType: Future<Output = ReturnType> + 'static,
ReturnType: 'static,
pub async fn spawn<FunctionType, FutureType, ReturnType>(
&'static self,
parent_task: TaskIdentifier,
name: &str,
spawner: Option<usize>,
function: FunctionType,
) -> Result<(JoinHandle<ReturnType>, TaskIdentifier)>where
FunctionType: FnOnce(TaskIdentifier) -> FutureType + 'static,
FutureType: Future<Output = ReturnType> + 'static,
ReturnType: 'static,
Spawn task
pub async fn yield()
pub async fn get_current_internal_identifier() -> usize
pub async fn get_current_task_identifier(&self) -> TaskIdentifier
Source§impl Manager
impl Manager
pub async fn set_user( &self, task_identifier: TaskIdentifier, user: UserIdentifier, ) -> Result<()>
pub async fn set_group( &self, task_identifier: TaskIdentifier, group: GroupIdentifier, ) -> Result<()>
pub async fn set_environment_variable( &self, task_identifier: TaskIdentifier, name: &str, value: &str, ) -> Result<()>
pub async fn set_environment_variables( &self, task_identifier: TaskIdentifier, environment_variables: &[(&str, &str)], ) -> Result<()>
pub async fn remove_environment_variable( &self, task_identifier: TaskIdentifier, name: &str, ) -> Result<()>
Sourcepub async fn get_user(
&self,
task_identifier: TaskIdentifier,
) -> Result<UserIdentifier>
pub async fn get_user( &self, task_identifier: TaskIdentifier, ) -> Result<UserIdentifier>
Get user identifier of the owner of a task.
Sourcepub async fn get_group(
&self,
task_identifier: TaskIdentifier,
) -> Result<GroupIdentifier>
pub async fn get_group( &self, task_identifier: TaskIdentifier, ) -> Result<GroupIdentifier>
Get group identifier of the owner of a task.
pub async fn get_environment_variable( &self, task_identifier: TaskIdentifier, name: &str, ) -> Result<EnvironmentVariable>
pub async fn get_environment_variables( &self, task_identifier: TaskIdentifier, ) -> Result<Vec<EnvironmentVariable>>
Source§impl Manager
impl Manager
Sourcepub async fn get_children(
&self,
task_identifier: TaskIdentifier,
) -> Result<Vec<TaskIdentifier>>
pub async fn get_children( &self, task_identifier: TaskIdentifier, ) -> Result<Vec<TaskIdentifier>>
Get the children tasks of a task.
Sourcepub async fn get_parent(
&self,
task_identifier: TaskIdentifier,
) -> Result<TaskIdentifier>
pub async fn get_parent( &self, task_identifier: TaskIdentifier, ) -> Result<TaskIdentifier>
Get the parent task of a task.
Source§impl Manager
impl Manager
pub async fn send_signal( &self, task_identifier: TaskIdentifier, signal: Signal, ) -> Result<()>
pub async fn pop_signal( &self, task_identifier: TaskIdentifier, ) -> Result<Option<Signal>>
pub async fn peek_signal( &self, task_identifier: TaskIdentifier, ) -> Result<Option<Signal>>
Source§impl Manager
impl Manager
pub fn register_spawner(&'static self, spawner: Spawner) -> Result<usize>
pub fn unregister_spawner(&'static self, identifier: usize) -> Result<()>
pub async fn get_spawner(&self, task: TaskIdentifier) -> Result<usize>
Source§impl Manager
impl Manager
pub const ROOT_TASK_IDENTIFIER: TaskIdentifier
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for Manager
impl !RefUnwindSafe for Manager
impl Unpin for Manager
impl UnwindSafe for Manager
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