FIFO调用open时阻塞

Posted hadesblog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FIFO调用open时阻塞相关的知识,希望对你有一定的参考价值。

以读或写打开一个FIFO会阻塞到另一端也打开。

当open一个FIFO时,非阻塞标志(O_NONBLOCK)会产生下列影响:

没有指定O_NONBLOCK,只读open要阻塞到某个其他进程为写而打开这个FIFO为止。类似的,只写open要阻塞到某个其他进程为读而打开它为止。


如果指定了O_NONBLOCK,则只读open立即返回,但是如果没有进程为读而打开一个FIFO,那么只写open将返回-1,并将errno设置成ENXIO。

以上是关于FIFO调用open时阻塞的主要内容,如果未能解决你的问题,请参考以下文章

Linux有名管道的 阻塞VS非阻塞 读写

IPC通信_有名管道(FIFO)

进程间通信--FIFO(命名管道)

POSIX FIFO 在阻塞模式下打开时冻结

Python永远打开fifo块

java 多线程阻塞队列 与 阻塞方法与和非阻塞方法