pub struct ThreadWakeHandle { /* private fields */ }Expand description
A stable direct wake header reference.
Self::wake uses non-sleeping scheduler transactions and is safe in hard
IRQ context. Creating, cloning, and dropping this owning reference are task-context
operations. A coroutine whose last raw-waker reference is released in hard IRQ
defers only that zero-reference allocation to the typed task-system reaper.
Implementations§
Source§impl ThreadWakeHandle
impl ThreadWakeHandle
Sourcepub fn wake(&self) -> WakeResult
pub fn wake(&self) -> WakeResult
Directly wakes the thread without allocating, sleeping, or invoking callbacks.
This IRQ-safe operation may acquire the thread scheduler lock and the selected CPU’s raw runqueue lock.
Sourcepub fn wake_sync(&self) -> WakeResult
pub fn wake_sync(&self) -> WakeResult
Wakes from task context when the caller expects to block shortly.
This is Linux’s WF_SYNC contract. It remains a scheduling hint: the
waker commits the destination runqueue activation before returning.
Trait Implementations§
Source§impl Clone for ThreadWakeHandle
impl Clone for ThreadWakeHandle
Source§impl Debug for ThreadWakeHandle
impl Debug for ThreadWakeHandle
Source§impl Drop for ThreadWakeHandle
impl Drop for ThreadWakeHandle
Auto Trait Implementations§
impl !RefUnwindSafe for ThreadWakeHandle
impl !UnwindSafe for ThreadWakeHandle
impl Freeze for ThreadWakeHandle
impl Send for ThreadWakeHandle
impl Sync for ThreadWakeHandle
impl Unpin for ThreadWakeHandle
impl UnsafeUnpin for ThreadWakeHandle
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