我有两个通过命名管道进行通信的C++程序(通过mkfifo()生成)。
一段时间后,编写程序挂起。我认为FIFO的缓冲区已满。
是否可以在写入FIFO之前检查缓冲区是否已满?
提前致谢!
鲁本
最佳答案
从 pipe
man page:
解决方案是打开指定O_NONBLOCK
标志的管道(请参阅 open
man page)。
我有两个通过命名管道进行通信的C++程序(通过mkfifo()生成)。
一段时间后,编写程序挂起。我认为FIFO的缓冲区已满。
是否可以在写入FIFO之前检查缓冲区是否已满?
提前致谢!
鲁本
最佳答案
从 pipe
man page:
解决方案是打开指定O_NONBLOCK
标志的管道(请参阅 open
man page)。