pub struct ThreadAffinityChange { /* private fields */ }Expand description
Move-only completion for one generation of a remote affinity change.
Implementations§
Source§impl ThreadAffinityChange
impl ThreadAffinityChange
Sourcepub const fn generation(&self) -> u64
pub const fn generation(&self) -> u64
Returns the generation assigned to this affinity change.
Sourcepub fn try_result(&self) -> Option<Result<(), TaskError>>
pub fn try_result(&self) -> Option<Result<(), TaskError>>
Observes completion, target exit, or a still-pending owner transition.
Sourcepub fn wait(self) -> Result<(), TaskError>
pub fn wait(self) -> Result<(), TaskError>
Sleeps until the owner runqueue orders this generation.
A later concurrent affinity update may supersede this request. In that case both requests complete after the owner has installed the latest placement, matching Linux’s shared pending-affinity completion.
§Errors
Returns TaskError::StaleThreadId if the target exits before the
generation completes, and propagates scheduler blocking failures.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for ThreadAffinityChange
impl !UnwindSafe for ThreadAffinityChange
impl Freeze for ThreadAffinityChange
impl Send for ThreadAffinityChange
impl Sync for ThreadAffinityChange
impl Unpin for ThreadAffinityChange
impl UnsafeUnpin for ThreadAffinityChange
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