完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
比如说。首先创建任务1,优先级为1,然后开调度器,此时,只有一个任务1和空闲任务,那么必然发生一次调度,执行任务一;然后再任务1创建三个任务,任务2 优先级2 依次;那么是否当任务2创建成功会发生调度,任务2优先级高于1,那么就执行2,当2被挂起再接着任务1创建任务3,再发生调度,执行任务3呢?
|
|
相关推荐
3个回答
|
|
应该不是这样,是在所有任务创建成功,删除开始任务引起的调度
|
|
|
|
|
|
在创建新任务的代码中xTaskCreate---prvAddNewTaskToReadyList函数中有这样一段代码:
if( xSchedulerRunning != pdFALSE ) { /* If the created task is of a higher priority than the current task then it should run now. */ if( pxCurrentTCB->uxPriority < pxNewTCB->uxPriority ) { taskYIELD_IF_USING_PREEMPTION(); //为何不在这里更新pxCurrentTCB = pxNewTCB? } else { mtCOVERAGE_TEST_MARKER(); } } 如果新创建的任务优先级比当前的任务优先级高并且此时调度器是运行的,那么是会任务调度的。求跟帖讨论 |
|
|
|
只有小组成员才能发言,加入小组>>
692 浏览 0 评论
1106 浏览 1 评论
2473 浏览 5 评论
2808 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2646 浏览 6 评论
使用eim外接fpga可是端口一点反应都没有有没有大哥指点一下啊
653浏览 9评论
649浏览 7评论
请教大神怎样去解决iMX6Q在linux3.0.35内核上做AP失败的问题呢
781浏览 6评论
628浏览 5评论
668浏览 5评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 03:50 , Processed in 0.948148 second(s), Total 84, Slave 64 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号