各位好,这里有个问题想请教下大家。
是这样的,在工程中创建了3个任务,任务的执行顺序是通过信号量来控制的。
大致框架如下:
void tskFxn0() { for(;;) { ... Semaphore_post(sem_fxn1); ... } } void tskFxn1() { for(;;) { ... Semaphore_pend(sem_fxn1, BIOS_WAIT_FOREVER); ... Semaphore_post(sem_fxn2); ... } } void tskFxn2() { for(;;) { ... Semaphore_pend(sem_fxn2, BIOS_WAIT_FOREVER); ... } }
其中tskFxn0优先级最低,其他两个任务优先级一样。
问题就是:程序会一直在tskFxn0中,一直post信号,其他任务不能得到信号