标签: linux unix
我有两个关于Linux编程的问题:
如果Unix进程从管道读取但没有数据写入该管道,那么内核对读取过程采取了什么操作?
如果写入过程然后将更多数据写入缓冲区而不是读者请求的数据,那么任何多余的数据(未传递给读者)将驻留在哪里?
答案 0 :(得分:0)
关于阻塞文件描述符和第二个问题的第一个问题,Jonathan Leffler写的内容适用。 对于非阻塞文件描述符的第一个问题,Linux内核只返回-EAGAIN(参见pipe.c)。
-EAGAIN