Jordern
驱动牛犊
驱动牛犊
  • 注册日期2004-12-30
  • 最后登录2005-09-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1490回复:2

问一个关于任务调度问题,菜菜级:)

楼主#
更多 发布于:2005-04-28 22:34
为什么无论我是否在shell下面敲入kernelTimeSlice(10)之后,再敲init,都只有task1得到调度?????

#include \"stdio.h\"
#include \"sysLib.h\"

void task1(void);
void task2(void);

int init(void)
{
    taskSpawn(\"tTask1\",200,0,1000,task1,0,0,0,0,0,0,0,0,0,0);
    taskSpawn(\"tTask2\",200,0,1000,task2,0,0,0,0,0,0,0,0,0,0);  
    return;
}

void task1(void)
{  
    while(1)
    {
        logMsg(\"\\r\\nTASK1  #########\",0,0,0,0,0,0);
    }  
  
    return;
}

void task2(void)
{
    while(1)
    {
        logMsg(\"\\r\\nTASK2  *********\",0,0,0,0,0,0);
    }
    return;
}
maple_wasp
驱动牛犊
驱动牛犊
  • 注册日期2003-10-02
  • 最后登录2009-03-09
  • 粉丝0
  • 关注0
  • 积分100分
  • 威望22点
  • 贡献值0点
  • 好评度22点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-04-30 19:35
Task1 都不会 return你的Task2 是不可能得到执行的了!
wangyanling
驱动牛犊
驱动牛犊
  • 注册日期2005-05-10
  • 最后登录2005-05-18
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2005-05-10 11:35
楼主可以试试调整优先级,另外,在task1中添加\"uglOSTaskDelay()\"使其它任务得到执行。
游客

返回顶部