作者:u012325601 来源:CSDN博客 时间:2018-05-16 20:53:04 我要评论

线程函数

线程函数生成的事件。更多...

函数

void EvrRtxThreadError (osThreadId_t thread_id, int32_t status)
 线程错误事件(错误)更多...
 
void EvrRtxThreadNew (osThreadFunc_t func, void *argument, const osThreadAttr_t *attr)
 线程创建和初始化事件(API)更多...
 
void EvrRtxThreadCreated (osThreadId_t thread_id, uint32_t thread_addr)
 成功创建线程的事件(Op)更多...
 
void EvrRtxThreadGetName (osThreadId_t thread_id, const char *name)
 线程名称检索事件(API)更多...
 
void EvrRtxThreadGetId (osThreadId_t thread_id)
 当前正在运行的线程 ID 检索事件 (API) 更多...
 
void EvrRtxThreadGetState (osThreadId_t thread_id, osThreadState_t state)
 线程状态检索事件(API)更多...
 
void EvrRtxThreadGetStackSize (osThreadId_t thread_id, uint32_t stack_size)
 线程堆栈大小检索事件(API)更多...
 
void EvrRtxThreadGetStackSpace (osThreadId_t thread_id, uint32_t stack_space)
 可用堆栈空间检索事件 (API) 更多...
 
void EvrRtxThreadSetPriority (osThreadId_t thread_id, osPriority_t priority)
 线程优先级设置事件(API)更多...
 
void EvrRtxThreadGetPriority (osThreadId_t thread_id, osPriority_t priority)
 线程优先检索事件(API)更多...
 
void EvrRtxThreadYield (void)
 线程收益事件(API)更多...
 
void EvrRtxThreadSuspend (osThreadId_t thread_id)
 线程挂起事件(API)更多...
 
void EvrRtxThreadSuspended (osThreadId_t thread_id)
 成功线程挂起的事件(Op)更多...
 
void EvrRtxThreadResume (osThreadId_t thread_id)
 线程恢复事件(API)更多...
void EvrRtxThreadResumed (osThreadId_t thread_id)
 成功的线程恢复事件(Op)更多...
 
void EvrRtxThreadDetach (osThreadId_t thread_id)
 线程分离事件(API)更多...
 
void EvrRtxThreadDetached (osThreadId_t thread_id)
 成功的线程分离事件(Op)更多...
 
void EvrRtxThreadJoin (osThreadId_t thread_id)
 线程连接事件(API)更多...
 
void EvrRtxThreadJoinPending (osThreadId_t thread_id)
 挂起线程连接事件(Op)更多...
 
void EvrRtxThreadJoined (osThreadId_t thread_id)
 成功的线程连接事件(Op)更多...
 
void EvrRtxThreadBlocked (osThreadId_t thread_id, uint32_t timeout)
 线程执行块事件(Op)更多...
 
void EvrRtxThreadUnblocked (osThreadId_t thread_id, uint32_t ret_val)
 线程执行解除阻塞事件(Op)更多...
 
void EvrRtxThreadPreempted (osThreadId_t thread_id)
 运行线程优先事件(Op)更多...
 
void EvrRtxThreadSwitched (osThreadId_t thread_id)
 运行线程切换事件(Op)更多...
void EvrRtxThreadExit (void)
 线程退出事件(API)更多...
 
void EvrRtxThreadTerminate (osThreadId_t thread_id)
 线程终止事件(API)更多...
 
void EvrRtxThreadDestroyed (osThreadId_t thread_id)
 成功的线程终止事件(Op)更多...
 
void EvrRtxThreadGetCount (uint32_t count)
 活动线程数检索事件(API)更多...
 
void EvrRtxThreadEnumerate (osThreadId_t *thread_array, uint32_t array_items, uint32_t count)
 活动线程枚举事件(API)更多...
 
void EvrRtxThreadFlagsWaitTimeout (void)
 线程标志等待超时事件(Op)更多...
 
void EvrRtxThreadDelay (uint32_t ticks)
 等待超时事件(API)更多...
 
void EvrRtxThreadDelayUntil (uint32_t ticks)
 等待指定时间事件(API)更多...
 
void EvrRtxThreadDelayCompleted (void)
 已完成等待的事件(Op)更多...
 

描述

函数文档

void EvrRtxThreadError ( osThreadId_t  thread_id,
    int32_t  status 
  )   
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取,或在 ID 未知时为 NULL 。
[in]status延长执行状态。

线程标志和线程管理例程由于错误而完成执行时,会生成事件 ThreadError 。

status 参数指示执行状态,可以是 osStatus_t 代码之一或下表中汇总的扩展执行状态代码之一。

扩展状态码描述
osRtxErrorKernelNotReady内核调度程序未处于就绪状态。
osRtxErrorKernelNotRunning内核调度程序未执行 - 没有正在运行的线程。
osRtxErrorInvalidControlBlock指定了具有无效对齐或大小的对象控制块。
osRtxErrorInvalidDataMemory指定了具有无效对齐或大小的对象数据存储器。
osRtxErrorInvalidThreadStack线程堆栈内存的无效对齐或大小被指定。
osRtxErrorInvalidPriority指定了无效的线程优先级。
osRtxErrorThreadNotJoinable指定的线程不可连接。
osRtxErrorMutexNotOwned指定的互斥锁不属于当前正在运行的线程。
osRtxErrorMutexNotLocked指定的互斥锁未锁定。
osRtxErrorMutexLockLimit达到递归互斥锁的最大数目。
osRtxErrorSemaphoreCountLimit达到了信号量计数限制。
osRtxErrorTZ_InitContext_S安全上下文内存系统初始化失败
osRtxErrorTZ_AllocContext_S安全上下文内存分配失败。
osRtxErrorTZ_FreeContext_S安全上下文内存释放失败。
osRtxErrorTZ_LoadContext_S安全上下文加载失败。
osRtxErrorTZ_SaveContext_S安全上下文保存失败。

事件记录器中的值显示:

  • thread_id : 线程 ID。
  • status : 执行状态代码。
void EvrRtxThreadNew ( osThreadFunc_t  func,
    void *  argument,
    const osThreadAttr_t attr 
  )   
参数
[in]func线程函数。
[in]argument作为启动参数传递给线程函数的指针。
[in]attr线程属性。

事件 ThreadNew 在调用函数 osThreadNew 时生成。

事件记录器中的值显示:

  • func : 线程函数的内存地址。
  • argument : 线程函数启动参数的内存地址。
  • attr : 线程属性的内存地址或未指定时的 0。

在 API 调用中提供线程属性的情况下,它们也在事件记录器中详细说明。

void EvrRtxThreadCreated ( osThreadId_t  thread_id,
    uint32_t  thread_addr 
  )   
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。
[in]thread_addr线程入口地址。

事件 ThreadCreated 在函数 osThreadNew 成功创建线程对象时生成。

事件记录器中的值显示:

  • thread_id : 线程 ID。
void EvrRtxThreadGetName ( osThreadId_t  thread_id,
    const char *  name 
  )   
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。
[in]name指向线程对象名称的指针。

当函数 osThreadGetName 被调用并且其执行结果已知时,会生成事件 ThreadGetName。

事件记录器中的值显示:

  • thread_id : 线程 ID。
  • name : 检索到名称字符串的内存地址(如果发生故障,则为 0)。
void EvrRtxThreadGetId ( osThreadId_t  thread_id)  
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。

事件 ThreadGetId 在调用函数 osThreadGetId 并且其执行结果已知时生成。

事件记录器中的值显示:

  • thread_id : 检索到的线程(在发生故障的情况下为 0)。
void EvrRtxThreadGetState ( osThreadId_t  thread_id,
    osThreadState_t  state 
  )   
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。
[in]state指定线程的当前线程状态。

当调用函数 osThreadGetState 并且其执行结果已知时,会生成事件 ThreadGetState。

事件记录器中的值显示:

  • thread_id : 线程 ID。
  • state : 检索当前线程状态。
void EvrRtxThreadGetStackSize ( osThreadId_t  thread_id,
    uint32_t  stack_size 
  )   
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。
[in]stack_size堆栈大小以字节为单位

事件 ThreadGetStackSize 是在函数 osThreadGetStackSize 被调用并且其执行结果已知时生成的。

事件记录器中的值显示:

  • thread_id : 线程 ID。
  • stack_size : 以字节为单位检索剩余堆栈空间(如果发生故障,则为 0)。
void EvrRtxThreadGetStackSpace ( osThreadId_t  thread_id,
    uint32_t  stack_space 
  )   
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。
[in]stack_space剩余堆栈空间以字节为单位

事件 ThreadGetStackSpace 是在函数 osThreadGetStackSpace 被调用并且其执行结果已知时生成的。

事件记录器中的值显示:

  • thread_id : 线程 ID。
  • stack_space : 以字节为单位检索剩余堆栈空间(如果发生故障,则为 0)。
void EvrRtxThreadSetPriority ( osThreadId_t  thread_id,
    osPriority_t  priority 
  )   
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。
[in]priority线程函数的新优先值。

事件 ThreadSetPriority 在调用函数 osThreadSetPriority 时生成。

事件记录器中的值显示:

  • thread_id : 线程 ID。
  • priority : 线程函数的新优先值。
void EvrRtxThreadGetPriority ( osThreadId_t  thread_id,
    osPriority_t  priority 
  )   
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。
[in]priority指定线程的当前优先级值。

事件 ThreadGetPriority 在调用函数 osThreadGetPriority 并且其执行结果已知时生成。

事件记录器中的值显示:

  • thread_id : 线程 ID。
  • priority : 指定线程的当前优先级值。
void EvrRtxThreadYield ( void   )  

事件 ThreadYield 在调用函数 osThreadYield 时生成。

void EvrRtxThreadSuspend ( osThreadId_t  thread_id)  
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。

当调用 osThreadSuspend 函数时会生成事件 ThreadSuspend。

事件记录器中的值显示:

  • thread_id : 线程 ID。
void EvrRtxThreadSuspended ( osThreadId_t  thread_id)  
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。

事件 ThreadSuspended 在函数 osThreadSuspend 成功挂起指定的线程时生成。

事件记录器中的值显示:

  • thread_id : 线程 ID。
void EvrRtxThreadResume ( osThreadId_t  thread_id)  
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。

事件 ThreadResume 在调用函数 osThreadResume 时生成。

事件记录器中的值显示:

  • thread_id : 线程 ID。
void EvrRtxThreadResumed ( osThreadId_t  thread_id)  
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。

当函数 osThreadResume 成功恢复指定的线程时,将生成事件 ThreadResumed。

事件记录器中的值显示:

  • thread_id : 线程 ID。
void EvrRtxThreadDetach ( osThreadId_t  thread_id)  
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。

事件 ThreadDetach 是在函数 osThreadDetach 被调用时生成的。

事件记录器中的值显示:

  • thread_id : 线程 ID。
void EvrRtxThreadDetached ( osThreadId_t  thread_id)  
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。

事件 ThreadDetached 在函数 osThreadDetach 成功分离指定的线程时生成。

事件记录器中的值显示:

  • thread_id : 线程 ID。
void EvrRtxThreadJoin ( osThreadId_t  thread_id)  
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。

事件 ThreadJoin 是在函数 osThreadJoin 被调用时生成的。

事件记录器中的值显示:

  • thread_id : 线程 ID。
void EvrRtxThreadJoinPending ( osThreadId_t  thread_id)  
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。

当函数 osThreadJoin 挂起当前正在运行的线程直到指定的线程终止时,会生成事件 ThreadJoinPending。

事件记录器中的值显示:

  • thread_id : 线程 ID。
void EvrRtxThreadJoined ( osThreadId_t  thread_id)  
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。

事件 ThreadJoined 在函数 osThreadJoin 成功加入指定的线程时生成。

事件记录器中的值显示:

  • thread_id : 线程 ID。
void EvrRtxThreadBlocked ( osThreadId_t  thread_id,
    uint32_t  timeout 
  )   
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。
[in]timeout超时值或 0 在没有超时的情况下。

事件 ThreadBlocked 在当前正在运行的线程执行被阻止时生成。

事件记录器中的值显示:

  • thread_id : 线程 ID。
  • timeout : 超时值。
void EvrRtxThreadUnblocked ( osThreadId_t  thread_id,
    uint32_t  ret_val 
  )   
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。
[in]ret_val扩展线程的执行状态。

当阻塞的线程执行被解除时,会生成事件 ThreadUnblocked。

事件记录器中的值显示:

  • thread_id : 线程 ID。
  • ret_val : 扩展线程的执行状态。
void EvrRtxThreadPreempted ( osThreadId_t  thread_id)  
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。

事件 ThreadPreempted 在当前正在运行的线程执行被抢占时生成。

事件记录器中的值显示:

  • thread_id : 线程 ID。
void EvrRtxThreadSwitched ( osThreadId_t  thread_id)  
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。

事件 ThreadSwitched 在当前正在运行的线程执行切换时生成。

事件记录器中的值显示:

  • thread_id : 线程 ID。
void EvrRtxThreadExit ( void   )  

ThreadExit 事件是在函数 osThreadExit 被调用时生成的。

void EvrRtxThreadTerminate ( osThreadId_t  thread_id)  
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。

事件 ThreadTerminate 在调用 osThreadTerminate 函数时生成。

事件记录器中的值显示:

  • thread_id : 线程 ID。
void EvrRtxThreadDestroyed ( osThreadId_t  thread_id)  
参数
[in]thread_id线程 ID 由 osThreadNew 或 osThreadGetId 获取。

事件 ThreadDestroyed 在函数 osThreadExit 或 osThreadTerminate 成功终止线程时生成。

事件记录器中的值显示:

  • thread_id : 线程 ID。
void EvrRtxThreadGetCount ( uint32_t  count)  
参数
[in]count活动线程数。

事件 ThreadGetCount 在函数 osThreadGetCount 被调用并且其执行结果已知时生成。

事件记录器中的值显示:

  • count : 检索活动线程的数量(如果发生故障,则为 0)。
void EvrRtxThreadEnumerate ( osThreadId_t thread_array,
    uint32_t  array_items,
    uint32_t  count 
  )   
参数
[in]thread_array指向数组以检索线程 ID 的指针。
[in]array_items数组中用于检索线程 ID 的最大项目数。
[in]count枚举线程数。

事件 ThreadEnumerate 是在函数 osThreadEnumerate 被调用并且其执行结果已知时生成的。

事件记录器中的值显示:

  • thread_array : 用于检索线程 ID 的数组的内存地址。
  • array_items : thread_array 中的最大项目数。
  • count : 枚举线程数(在发生故障的情况下为 0)。
void EvrRtxThreadFlagsWaitTimeout ( void   )  

事件 ThreadFlagsWaitTimeout 在等待由于过期的等待超时而导致信号线程标志等待中断时生成。

void EvrRtxThreadDelay ( uint32_t  ticks)  
参数
[in]ticks时间滴答值。

当调用 osDelay 函数时会生成事件 ThreadDelay。

事件记录器中的值显示:

  • ticks : 时间滴答值。
void EvrRtxThreadDelayUntil ( uint32_t  ticks)  
参数
[in]ticks绝对时间节拍。

事件 ThreadDelayUntil 在调用函数 osDelayUntil 时生成。

事件记录器中的值显示:

  • ticks : 绝对延迟时间以节拍为单位。
void EvrRtxThreadDelayCompleted ( void   )  

当线程延迟到期时,会生成事件 ThreadDelayCompleted。


作者:u012325601 发表于2018/5/16 20:53:04 原文链接
阅读:3 评论:0 查看评论
29阅读 | 0评论
你的回应
写文章

联系我们