文档首页 > > 开发指南> 内核开发指南> 任务> 注意事项

注意事项

分享
更新时间:2018/12/16 GMT+08:00
  • 创建新任务时,会对之前自删除任务的任务控制块和任务栈进行回收,非自删除任务的控制块和栈在任务删除的时候已经回收。
  • 任务名是指针没有分配空间,在设置任务名时,禁止将局部变量的地址赋值给任务名指针。
  • 若指定的任务栈大小为0,则使用配置项LOSCFG_BASE_CORE_TSK_DEFAULT_STACK_SIZE指定默认的任务栈大小。
  • 任务栈的大小按8字节大小对齐。确定任务栈大小的原则是,够用就行:多了浪费,少了任务栈溢出。
  • 挂起任务的时候若为当前任务且已锁任务,则不能被挂起。
  • 空闲(IDLE)任务及软件定时器任务不能被挂起或者删除。
  • 在中断处理函数中或者在锁任务的情况下,执行LOS_TaskDelay操作会失败。
  • 锁任务调度,并不关中断,因此任务仍可被中断打断。
  • 锁任务调度必须和解锁任务调度配合使用。
  • 设置任务优先级的时候可能会发生任务调度。
  • 除去空闲(IDLE)任务以外,系统可配置的任务资源个数是指:整个系统的任务资源总个数,而非用户能使用的任务资源个数。例如:系统软件定时器多占用一个任务资源数,那么系统可配置的任务资源就会减少一个。
  • 为了防止系统出现问题,系统禁止对软件定时器任务优先级进行修改。
  • LOS_CurTaskPriSet和LOS_TaskPriSet接口不能在中断中使用。
  • LOS_TaskPriGet接口传入的task ID对应的任务未创建或者超过最大任务数,统一返回0xffff。
  • 在删除任务时要保证任务申请的资源(如互斥锁、信号量等)已被释放。
分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问