#[repr(C)]pub struct _thread {Show 13 fields
pub sp: *mut c_char,
pub status: thread_status_t,
pub priority: u8,
pub pid: kernel_pid_t,
pub flags: thread_flags_t,
pub rq_entry: clist_node_t,
pub wait_data: *mut c_void,
pub msg_waiters: list_node_t,
pub msg_queue: cib_t,
pub msg_array: *mut msg_t,
pub stack_start: *mut c_char,
pub name: *const c_char,
pub stack_size: c_int,
}
Expand description
@brief @c thread_t holds thread’s context data.
Fields§
§sp: *mut c_char
< thread’s stack pointer
status: thread_status_t
< thread’s status
priority: u8
< thread’s priority
pid: kernel_pid_t
< thread’s process id
flags: thread_flags_t
< currently set flags
rq_entry: clist_node_t
< run queue entry
wait_data: *mut c_void
< used by msg, mbox and thread flags
msg_waiters: list_node_t
< threads waiting for their message to be delivered to this thread (i.e. all blocked sends)
msg_queue: cib_t
< index of this [thread’s message queue] (thread_t::msg_array), if any
msg_array: *mut msg_t
< memory holding messages sent to this thread’s message queue
stack_start: *mut c_char
< thread’s stack start address
name: *const c_char
< thread’s name
stack_size: c_int
< thread’s stack size
Trait Implementations§
impl Copy for _thread
Auto Trait Implementations§
impl Freeze for _thread
impl RefUnwindSafe for _thread
impl !Send for _thread
impl !Sync for _thread
impl Unpin for _thread
impl UnwindSafe for _thread
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 52 bytes