在进程结束之前删除命名管道?

时间:2013-07-22 09:06:57

标签: linux named-pipes

我可以理所当然地认为命名管道继续工作,直到相关的程序结束,即使它已被删除。因为它正在发生:

o@dekstop:~$ mkfifo pipe
o@dekstop:~$ cat < pipe &
[1] 22467
o@dekstop:~$ cat > pipe
echo1         
echo1
echo2
echo2
^Z
[2]+  Stopped                 cat > pipe
o@dekstop:~$ rm pipe
o@dekstop:~$ fg
cat > pipe
echo3
echo3

1 个答案:

答案 0 :(得分:1)

是;只要某些进程仍然打开,Linux就不会真正删除命名管道,就像它不会删除常规文件一样。