- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
4.3.2任务管理接口及应用
通过本节学习,您可以:了解任务管理接口说明及应用
任务管理接口及应用OpenHarmonyLiteOS-M内核的任务模块提供的功能:1.任务管理接口功能分类接口名接口描述创建和删除任务LOS_TaskCreateOnly创建任务,并使该任务进入suspend状态LOS_TaskCreate创建任务,并使该任务进入ready状态,如果就绪队列中没有更高优先级的任务,则运行该任务LOS_TaskDelete删除指定的任务
任务管理接口及应用1.任务管理接口功能分类接口名接口描述控制任务状态LOS_TaskResume恢复挂起的任务,使该任务进入ready状态LOS_TaskSuspend挂起指定的任务,然后切换任务LOS_TaskJoin挂起当前任务,等待指定任务运行结束并回收其任务控制块资源LOS_TaskDelay任务延时等待,释放CPU,等待时间到期后该任务会重新进入ready状态。传入参数为Tick数目LOS_Msleep任务延时等待,释放CPU,等待时间到期后该任务会重新进入ready状态。传入参数为毫秒数LOS_TaskYield当前任务时间片设置为0,释放CPU,触发调度运行就绪任务队列中优先级最高的任务OpenHarmonyLiteOS-M内核的任务模块提供的功能:
任务管理接口及应用功能分类接口名接口描述控制任务调度LOS_TaskLock锁任务调度,但任务仍可被中断打断LOS_TaskUnlock解锁任务调度LOS_Schedule触发任务调度控制任务优先级LOS_CurTaskPriSet设置当前任务的优先级LOS_TaskPriSet设置指定任务的优先级LOS_TaskPriGet获取指定任务的优先级OpenHarmonyLiteOS-M内核的任务模块提供的功能:1.任务管理接口
任务管理接口及应用功能分类接口名接口描述获取任务信息LOS_CurTaskIDGet获取当前任务的IDLOS_NextTaskIDGet获取任务就绪队列中优先级最高的任务的IDLOS_NewTaskIDGet获取任务就绪队列中优先级最高的任务的IDLOS_CurTaskNameGet获取当前任务的名称LOS_TaskNameGet获取指定任务的名称LOS_TaskStatusGet获取指定任务的状态LOS_TaskInfoGet获取指定任务的信息,包括任务状态、优先级、任务栈大小、栈顶指针SP、任务入口函数、已使用的任务栈大小等LOS_TaskIsRunning获取任务模块是否已经开始调度运行。任务信息维测LOS_TaskSwitchInfoGet获取任务切换信息,需要开启编译控制宏:LOSCFG_BASE_CORE_EXC_TSK_SWITCH。OpenHarmonyLiteOS-M内核的任务模块提供的功能:1.任务管理接口
任务管理接口及应用任务管理的一般开发流程如下:(1)锁任务调度LOS_TaskLock,防止高优先级任务调度。(2)创建任务LOS_TaskCreate。(3)解锁任务LOS_TaskUnlock,让任务按照优先级进行调度。(4)延时任务LOS_TaskDelay,任务延时等待。(5)挂起指定的任务LOS_TaskSuspend,任务挂起等待恢复操作。(6)恢复挂起的任务LOS_TaskResume。2.任务管理应用
任务管理接口及应用进行任务管理时的注意事项如下:执行Idle任务时,会对待回收链表中的任务控制块和任务栈进行回收。任务名是指针,并没有分配空间,在设置任务名时,禁止将局部变量的地址赋值给任务名指针。任务栈的大小按8字节大小对齐。确定任务栈大小的原则是,够用就行,多了浪费,少了任务栈溢出。挂起当前任务时,如果已经锁任务调度,则无法挂起。Idle任务及软件定时器任务不能被挂起或者删除。在中断处理函数中或者在锁任务的情况下,执行LOS_TaskDelay会失败。锁任务调度,并不关中断,因此任务仍可被中断打断。锁任务调度必须和解锁任务调度配合使用。设置任务优先级时可能会发生任务调度。
任务管理接口及应用可配置的系统最大任务数:整个系统的任务总个数,而非用户能使用的任务个数。例如:系统软件定时器多占用一个任务资源,那么用户能使用的任务资源就会减少一个。LOS_CurTaskPriSet和LOS_TaskPriSet接口不能在中断中使用,也不能用于修改软件定时器任务的优先级。LOS_TaskPriGet接口传入的taskID对应的任务未创建或者超过最大任务数,统一返回-1。在删除任务时要保证任务申请的资源(如互斥锁、信号量等)已被释放。
任务管理接口及应用具体代码如下:#includestdio.h#includelos_task.h#
您可能关注的文档
- 《鸿蒙智能互联设备开发(微课版)》 课件 2.1.1 鸿蒙设备开发硬件环境要求.pptx
- 《鸿蒙智能互联设备开发(微课版)》 课件 2.1.2 鸿蒙设备开发软件环境要求.pptx
- 《鸿蒙智能互联设备开发(微课版)》 课件 2.1.3 鸿蒙设备开发环境的搭建.pptx
- 《鸿蒙智能互联设备开发(微课版)》 课件 2.2 鸿蒙系统构建工具链.pptx
- 《鸿蒙智能互联设备开发(微课版)》 课件 2.2.1 鸿蒙构建工具链介绍.pptx
- 《鸿蒙智能互联设备开发(微课版)》 课件 2.2.2 Ninja构建工具介绍.pptx
- 《鸿蒙智能互联设备开发(微课版)》 课件 2.2.3 Ninja常用语法.pptx
- 《鸿蒙智能互联设备开发(微课版)》 课件 2.2.4 GN常用语法.pptx
- 《鸿蒙智能互联设备开发(微课版)》 课件 3.1.1 鸿蒙系统源码框架.pptx
- 《鸿蒙智能互联设备开发(微课版)》 课件 3.1.2 鸿蒙系统源码下载.pptx
- 文稿题目终极版.pptx
- l cherkashyn设计此卡片模型个人使用于商业用途所用纸张发射工位proxy2k.pdf
- 江苏启创科技图片企业资信.pdf
- 学习目标1chapter 2 lecture with instructors notes12讲师笔记.pdf
- 案例参考介绍mr0605.pdf
- 章期权市场简介2lecture6 chap017讲座.pptx
- 计算流体结构相互作用耦合时间谱方法谐波平衡hbmgt2017-64260.pdf
- 奥美互动团队客户关系管理crm1 vladimir jordanov创意培训.pdf
- 按以下顺序处理规则1验证分配自动响应4 admin flash cardssfdc管理员闪存卡.pdf
- 普通高等学校全国统一考试英语试卷.pdf
文档评论(0)