1

我在Arm Cortex M4下使用uCOS-III,遇到以下问题:

如果 OSSemPend() 在同一个任务中执行了两次),比如

timeout = 100; /* 0.1 s */
OSSemPend(rtos_sem_p, timeout, OS_OPT_PEND_BLOCKING, NULL, &err);
...
OSSemPend(rtos_sem_p, timeout, OS_OPT_PEND_BLOCKING, NULL, &err);
...

(不发出 OSSemPost())它不会在第二次调用时遇到超时,而是无限阻塞。

我检查了我能做的,但仍然找不到问题......有人可以解释一下这里发生了什么吗?

非常感谢,

迈克尔

4

0 回答 0