完善资料让更多小伙伴认识你,还能领取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(); } } 如果新创建的任务优先级比当前的任务优先级高并且此时调度器是运行的,那么是会任务调度的。求跟帖讨论 |
|
|
|
|
只有小组成员才能发言,加入小组>>
1018 浏览 1 评论
1849 浏览 0 评论
1830 浏览 1 评论
3254 浏览 5 评论
3581 浏览 9 评论
1020浏览 1评论
1849浏览 1评论
如何知道嵌入式电子控制单元 (ECU) 中的RAM使用情况?
1359浏览 1评论
1851浏览 0评论
1176浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 17:27 , Processed in 0.925247 second(s), Total 78, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
427