我创建了一个fifo管道
$ mkfifo pipename
现在,如果我写了一些东西,命令将不会返回,
$ echo "foo" > pipename
直到我读到它:
$ cat < pipename
foo
此外,在写入内容之前,read命令也不会返回。
现在,我想创建一个这样的东西(实际上,也许这个东西不应该被认为是管道,而是某种缓冲区)
由于
答案 0 :(得分:1)
使用fifo,但写自己的读者和作家。在设置了O_NONBLOCK的情况下打开fifo,如果没有其他进程打开另一方,open将立即返回。您的写入命令将立即返回(根据请求),但数据将丢失。如果您希望数据保持不变,请使用常规文件。