Argon RTOS  1.3.0
Tiny embedded real-time kernel
ar_thread_t Struct Reference

#include <ar_kernel.h>

+ Inheritance diagram for ar_thread_t:

Description

Thread.

Public Member Functions

void block (ar_list_t &blockedList, uint32_t timeout)
 
void unblockWithStatus (ar_list_t &blockedList, ar_status_t unblockStatus)
 

Public Attributes

ar_list_node_t m_blockedNode
 Blocked list node.
 
void * m_channelData
 Receive or send data pointer for blocked channel.
 
ar_thread_entry_t m_entry
 Function pointer for the thread's entry point.
 
const char * m_name
 Thread name.
 
ar_thread_port_data_t m_portData
 Port-specific thread data.
 
uint8_t m_priority
 Thread priority. 0 is the lowest priority.
 
ar_runloop_t * m_runLoop
 Run loop associated with this thread.
 
uint32_t * m_stackBottom
 Beginning of stack.
 
volatile uint8_t * m_stackPointer
 Current stack pointer.
 
uint32_t * m_stackTop
 Saved stack top address for computing stack usage.
 
ar_thread_state_t m_state
 Current thread state.
 
ar_list_node_t m_threadNode
 Main thread list node.
 
ar_status_t m_unblockStatus
 Status code to return from a blocking function upon unblocking.
 
uint32_t m_uniqueId
 Unique ID for this thread.
 
uint32_t m_wakeupTime
 Tick count when a sleeping thread will awaken.