#[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§
source§impl<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§
source§impl<System: KernelBase> Clone for TaskRef<'_, System>
impl<System: KernelBase> Clone for TaskRef<'_, System>
source§impl<System: KernelBase> Debug for TaskRef<'_, System>
impl<System: KernelBase> Debug for TaskRef<'_, System>
source§impl<System: KernelBase> Hash for TaskRef<'_, System>
impl<System: KernelBase> Hash for TaskRef<'_, System>
source§impl<System: NotSupportedYet> PartialEq<Task<System>> for TaskRef<'_, System>
impl<System: NotSupportedYet> PartialEq<Task<System>> for TaskRef<'_, System>
source§impl<System: NotSupportedYet> PartialEq<TaskRef<'_, System>> for Task<System>
impl<System: NotSupportedYet> PartialEq<TaskRef<'_, System>> for Task<System>
source§impl<System: KernelBase> PartialEq<TaskRef<'_, System>> for TaskRef<'_, System>
impl<System: KernelBase> PartialEq<TaskRef<'_, System>> for TaskRef<'_, System>
source§impl<System: KernelBase> TaskHandle for TaskRef<'_, System>
impl<System: KernelBase> TaskHandle for TaskRef<'_, System>
source§const unsafe fn from_id(id: <System as KernelBase>::RawTaskId) -> Self
const unsafe fn from_id(id: <System as KernelBase>::RawTaskId) -> Self
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§
source§impl<T> TaskMethods for Twhere
T: TaskHandle,
impl<T> TaskMethods for Twhere T: TaskHandle,
source§fn interrupt(&self) -> Result<(), InterruptTaskError>
fn interrupt(&self) -> Result<(), InterruptTaskError>
Interrupt any ongoing wait operations undertaken by the task. Read more
source§fn unpark(&self) -> Result<(), UnparkError>
fn unpark(&self) -> Result<(), UnparkError>
Make the task’s token available, unblocking
Kernel::park
now or in
the future. Read moresource§fn 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 moresource§fn 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
source§fn priority(&self) -> Result<usize, GetTaskPriorityError>
fn priority(&self) -> Result<usize, GetTaskPriorityError>
Get the task’s base priority. Read more
source§fn effective_priority(&self) -> Result<usize, GetTaskPriorityError>
fn effective_priority(&self) -> Result<usize, GetTaskPriorityError>
Get the task’s effective priority. Read more