我知道对于当前版本的Linux内核,命名管道的大小为64K。是否有可能完全增加此大小?
我知道我可以切换到套接字,但是首先我想看看是否可以通过仅增加命名管道的大小来解决间歇性的缓冲区溢出问题。
使用最新的内核(> = 2.6.35),您可以使用以下命令更改管道的大小
fcntl(fd, F_SETPIPE_SZ, size)
哪里size是long。最大大小为/proc/sys/fs/pipe-max-size。
size
long
/proc/sys/fs/pipe-max-size