飞剑 发表于 2016-4-27 17:28:15

UCOSIII中如何放弃任务的执行?

比如有两个任务,一个任务高优先级,负责接收数据;另一个任务低优先级,负责启动设备。启动设备需要用高优先级任务接收到的数据作为参数,参数不同,启动后的效果也不同。
如果此时启动设备的任务被激活运行了,同时,高优先级的接收数据任务也被激活了,这时,先不论这些数据是两个任务公用的还是分开的(是否用的同一段RAM地址),设备按理来说应该是停止启动,因为启动参数(数据)不同了,如何才能做到呢?

jiaowoxiaolu 发表于 2016-4-27 17:51:51

事件标志,邮箱这些东西不就行了么,pend起任务等消息就行了

flamma 发表于 2016-4-27 17:52:45

这需求和UCOS并没有太大的关系, 常见的做法是设置一个全局flag,启动流程每执行一个步骤检查一下flag,如果发现flag改变,就跳转到退出启动流程。并不推荐使用类似OSTaskDel来强制删除。
页: [1]
查看完整版本: UCOSIII中如何放弃任务的执行?