封锁的确切机制是什么?

时间:2019-07-09 20:04:46

标签: posix block wait

例如,当我调用此POSIX消息队列方法时

#include <mqueue.h>

ssize_t mq_receive (mqd_t mqdes, char *msg_ptr, size_t msg_len, 
                    unsigned int *msg_prio);

正常配置是阻止直到数据可用。我想知道“阻塞”一词到底是什么意思。

它是否以while(1)方式无休止地循环直到数据可用?

它是否等待条件变量变为true或发出信号(从而产生线程的CPU周期?

还是使用其他形式的软件中断机制?

这在我尝试设计低能耗,计算保守的实时系统时非常重要。

0 个答案:

没有答案