在Linux上更改命名管道的大小是否可行?

13

我知道当前版本的Linux内核中,命名管道的大小为64K。是否可以增加这个大小?

我知道我可以切换到套接字(sockets),但首先我想看看是否可以通过增加命名管道的大小来解决间歇性的缓冲区溢出问题。

1个回答

16

在最近的内核版本(>= 2.6.35)中,您可以使用以下命令更改管道的大小:

fcntl(fd, F_SETPIPE_SZ, size)

其中size是一个long类型的变量。最大尺寸可以在/proc/sys/fs/pipe-max-size中找到。


1
很遗憾,这是一个2.6.32系统。 - AgentLiquid
2
@larsmans - 在Debian上是否有可用的Bash命令? - will

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接