4400|3

4

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

请问:在临界区内能进行任务切换吗 [复制链接]

 void start_task(void *pdata)
{
    OS_CPU_SR cpu_sr=0;
pdata = pdata;
OSStatInit();     //³õʼ»¯Í³¼ÆÈÎÎñ.ÕâÀï»áÑÓʱ1ÃëÖÓ×óÓÒ
  OS_ENTER_CRITICAL();   //½øÈëÁÙ½çÇø(ÎÞ·¨±»Öжϴò¶Ï)   
  OSTaskCreate(led1_task,(void *)0,(OS_STK*)&LED1_TASK_STK[LED1_STK_SIZE-1],LED1_TASK_PRIO);         
  OSTaskCreate(led2_task,(void *)0,(OS_STK*)&LED2_TASK_STK[LED2_STK_SIZE-1],LED2_TASK_PRIO);         
OSTaskSuspend(START_TASK_PRIO); //¹ÒÆðÆðʼÈÎÎñ.
OS_EXIT_CRITICAL();    //Í˳öÁÙ½çÇø(¿ÉÒÔ±»Öжϴò¶Ï)
}

在上面程序中, OSTaskSuspend(START_TASK_PRIO); 在临界区中,起始任务挂起自己后能进行任务切换吗?

最新回复

临界区内能进行任务切换,这样的用法是错误的,严重影响系统实时性。  详情 回复 发表于 2015-8-16 22:48
点赞 关注
 

回复
举报

1142

帖子

24

TA的资源

纯净的硅(高级)

沙发
 
这是什么OS?一般OS切换任务有常规切换的,也有在中断里专用的切换任务的,我用COOS里有用过,ISR开头的以须中断里切换任务,
 
 
 

回复

4

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
是UCOS-II,任务调度时的任务切换需要进行中断
 
 
 

回复

420

帖子

0

TA的资源

纯净的硅(初级)

4
 
临界区内能进行任务切换,这样的用法是错误的,严重影响系统实时性。
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表