<分区>
进程1.cpp:
const char* myfifo = "./myfifo";
mkfifo(myfifo,0666);
fd = open(myfifo, O_RDONLY);
wait(0);
read(fd, &sum, 4);
进程2.cpp:
fd = open(myfifo, O_WRONLY);
unlink(myfifo);
write(fd, &write_int, sizeof(write_int) );
首先,我使用mkfifo()创建了一个名为myfifo的管道文件,然后将myfifo的描述符给process1和process2,然后使用unlink() 删除myfifo。 整个程序运行正常,但奇怪的是我删除了myfifo后仍然可以在两个进程之间读写。有谁知道原因吗?