This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

任务不调度



Hi:

    各位大侠好,我们调试的时候遇到有几个任务处于Ready状态,但是Ready了的任务不执行,而是Idle任务执行的问题,现象如下图所示:

请问遇到这种问题如何调试?

  • 可能是任务没有被触发,确认这些任务的触发条件是否满足。

    可以创建一个简单的任务,任务中简单执行while(1)对数据的累加等操作,看看该任务是否一直处于running状态。

  • Andy您说的实验经做了,建立了一个Test任务,任务中对一个数简单的做累加,该任务通过Task_sleep(10)实现周期运行,每个Task_sleep的时间是500us,在正常情况下,该任务一直运行,当出现问题时,这个任务的也不运行,查看ROV发现,该任务的状态是block的,且Task_sleep的参数是4294967295,也就是说Task_sleep的入参被改写了。Andy请问一下任务调度是不是Bios通过一个结构体来维护的,如何查看到任务调度的信息?谢谢

  • 根据你的描述,你建立的任务是可以正常运行或通过task_sleep来控制的,只是会出现异常,是么?如果是这样的话,建议查看你的工程是否存在其他类似内存改写等问题导致的系统运行异常。