uc/osII优先级问题

[复制链接]
 楼主| xysl 发表于 2009-8-11 23:25 | 显示全部楼层 |阅读模式
我想在中断后直接返回到一个线程里(假定线程A).因此我要设置线程A为最高优级.
看书上可用:OSTaskChangPrio()函数改变线程的优先级.由于线程优先极翻转原理,因此不知道当前最高优先级值是多少.所以没法设置线程A的优先级值.
请大家给个意见.是有直接设置最高优先级线程吗?还是直接人工设置.谢谢
e掾木 发表于 2009-8-12 08:04 | 显示全部楼层
在UCOS里只有互斥信号量有这样的功能,提升某个任务的优先级,让他先享用互斥信号量,放弃CPU的时候回到原来的优先位置。
kanprin 发表于 2009-8-12 11:22 | 显示全部楼层
不一定要更改优先级,假如你A一开始就设为优先级最高了,可以让A任务开始时等待一个信号量,在中断里去发送那个信号量退出后,你的A任务会得到最先响应的。
华荣汇FAE5 发表于 2009-8-14 09:57 | 显示全部楼层
呵呵 优先级是根据你的功能实时要求来确定的,你说的是优先级嵌套的问题,建议你把所有任务的优先级列出来。。。。。。。
barryyan 发表于 2009-8-17 19:41 | 显示全部楼层
不一定要更改优先级,假如你A一开始就设为优先级最高了,可以让A任务开始时等待一个信号量,在中断里去发送那个信号量退出后,你的A任务会得到最先响应的。 ...
kanprin 发表于 2009-8-12 11:22


感觉3楼比较符合我的想法,只要在中断中发送一个信号量给正在等待的任务A就行了吧
sanguankou 发表于 2009-8-20 21:03 | 显示全部楼层
学习了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

11

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部