#[repr(transparent)]pub struct TaskRef<'a, System: KernelBase>(_, _);
Expand description
Represents a single borrowed task in a system.
This type is ABI-compatible with System::
RawTaskId
. It’s
logically equivalent to &'a Task
but instead stores RawTaskId
directly.
See Task
for the owned counterpart and the description
of this kernel object.
See TaskMethods
for the operations provided by this handle
type.
Implementations
sourceimpl<System: KernelBase> TaskRef<'static, System>
impl<System: KernelBase> TaskRef<'static, System>
sourcepub const fn define() -> TaskDefiner<System>
pub const fn define() -> TaskDefiner<System>
Construct a TaskDefiner
to define a task in a configuration
function.
Trait Implementations
sourceimpl<System: KernelBase> Clone for TaskRef<'_, System>
impl<System: KernelBase> Clone for TaskRef<'_, System>
sourceimpl<System: KernelBase> Debug for TaskRef<'_, System>
impl<System: KernelBase> Debug for TaskRef<'_, System>
sourceimpl<System: KernelBase> Hash for TaskRef<'_, System>
impl<System: KernelBase> Hash for TaskRef<'_, System>
sourceimpl<System: KernelBase> PartialEq<TaskRef<'_, System>> for TaskRef<'_, System>
impl<System: KernelBase> PartialEq<TaskRef<'_, System>> for TaskRef<'_, System>
sourceimpl<System: KernelBase> TaskHandle for TaskRef<'_, System>
impl<System: KernelBase> TaskHandle for TaskRef<'_, System>
impl<System: KernelBase> Copy for TaskRef<'_, System>
impl<System: KernelBase> Eq for TaskRef<'_, System>
Auto Trait Implementations
impl<'a, System> RefUnwindSafe for TaskRef<'a, System> where
<System as KernelBase>::RawTaskId: RefUnwindSafe,
impl<'a, System> Send for TaskRef<'a, System>
impl<'a, System> Sync for TaskRef<'a, System>
impl<'a, System> Unpin for TaskRef<'a, System> where
<System as KernelBase>::RawTaskId: Unpin,
impl<'a, System> UnwindSafe for TaskRef<'a, System> where
<System as KernelBase>::RawTaskId: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> TaskMethods for T where
T: TaskHandle,
impl<T> TaskMethods for T where
T: TaskHandle,
sourcefn activate(&self) -> Result<(), ActivateTaskError>
fn activate(&self) -> Result<(), ActivateTaskError>
Start the execution of the task.
sourcefn interrupt(&self) -> Result<(), InterruptTaskError>
fn interrupt(&self) -> Result<(), InterruptTaskError>
Interrupt any ongoing wait operations undertaken by the task. Read more
sourcefn unpark(&self) -> Result<(), UnparkError>
fn unpark(&self) -> Result<(), UnparkError>
Make the task’s token available, unblocking Kernel::park
now or in
the future. Read more
sourcefn unpark_exact(&self) -> Result<(), UnparkExactError>
fn unpark_exact(&self) -> Result<(), UnparkExactError>
Make exactly one new token available for the task, unblocking
Kernel::park
now or in the future. Read more
sourcefn set_priority(&self, priority: usize) -> Result<(), SetTaskPriorityError> where
Self::System: KernelTaskSetPriority,
fn set_priority(&self, priority: usize) -> Result<(), SetTaskPriorityError> where
Self::System: KernelTaskSetPriority,
Set the task’s base priority. Read more
sourcefn priority(&self) -> Result<usize, GetTaskPriorityError>
fn priority(&self) -> Result<usize, GetTaskPriorityError>
Get the task’s base priority. Read more
sourcefn effective_priority(&self) -> Result<usize, GetTaskPriorityError>
fn effective_priority(&self) -> Result<usize, GetTaskPriorityError>
Get the task’s effective priority. Read more