No.44388 作者:ruanhan 邮件:ruanhan2001@163.com ID:3825 登陆:15次 QQ:19617687 文章数:113篇 最后登陆IP:220.112.6.208 最后登陆:2005/7/3 21:32:36 注册:2002/11/10 14:20:00 财富:494 发帖时间:2003/11/6 21:40:26 发贴者IP:202.113.4.10 标题:ruanhan:关于vxworks任务调度的问题! 摘要:No.44388关于vxworks任务调度的问题! 由于刚刚学习,有些问题不明白: 1。任务之间调度,在哪里发生? 比如刚开始运行任务a,是不是只有运行taskDelay()函数之后 才能进入任务调度?如果不运行这个函数应该无法调度吧? 2。消息队列的问题:比如任务b先运行msgQReceive(),结果 没取到消息进入堵塞状态,过若干时间,任务a运行msgQSend() 进入队列消息,按理任务b应该恢复运行状态(因为它在排在队列最前面), 现在问题是:任务b是不是立刻运行还是等任务a把任务运行完, 到了taskDelay()处才开始运行任务b, 比如任务a: taska() { msgQSend(); printf("hello"); taskDelay(); } 如上,是在msgQSend()处直接运行任务b,还是等运行完printf语句, 然后进入taskDelay()时运行任务b????? 谢谢指点!万分感谢! ......
>>返回讨论的主题
|
|