参考:【野火】物联网操作系统 LiteOS 开发实战指南

2 LiteOS常见句柄介绍

2.1 任务句柄

  • 任务句柄(任务ID)是一个指针UINT32),但是定义的时候是按照普通变量定义(起指针作用),而非指针变量
  • 任务句柄用于指向一个任务,当任务创建好之后,它就具有了一个任务句柄
  • 我们在操作某个任务时,都需要这个任务句柄
  • 如果是自身的任务操作自己,那么这个句柄可以为NULL

2.2 内核对象句柄

  • 内核对象
    • 信号量
    • 消息队列
    • 事件标志组
    • 软件定时器
  • 要使用这些内核对象,必须先创建(调用对应函数),创建成功后会返回一个相应的句柄
  • 内核对象句柄实际上就是一个指针,后续我们就可以通过这个句柄操作这些内核对象
  • 内核对象说白了就是一种全局的数据结构,通过这些数据结构我们可以实现任务间的通信任务间的事件同步等各种功能,这些功能的实现,我们是通过调用这些内核对象的函数来完成的
Logo

openvela 操作系统专为 AIoT 领域量身定制,以轻量化、标准兼容、安全性和高度可扩展性为核心特点。openvela 以其卓越的技术优势,已成为众多物联网设备和 AI 硬件的技术首选,涵盖了智能手表、运动手环、智能音箱、耳机、智能家居设备以及机器人等多个领域。

更多推荐