2012-07-12 196 views
0

我炮轰这样的:为什么我在Linux中的管道卡住了?

mkfifo my_fifo 

拥有此权限:

prw-r--r-- 

然后我做的:

echo this is my fifo > my_fifo  

但它卡住,并从另一个shell大小十秒钟后my_fifo为零。

这是为什么?

+2

除非另行编程,否则fifo会在没有阅读器的情况下阻止作者。一旦数据从FIFO中消耗,作者将被允许继续 – Petesh 2012-07-12 07:36:37

回答

1

在终端1:

$ cat > my_fifo 

在终端2:

$ cat my_fifo 

该类型的东西在终端1之后,检查终端2

备注FIFO大小:它始终是0,因为它不是普通文件,而是使用RAM而不是磁盘的命名管道。