谢谢答复
我现在有这样一个情况,接收进程可能无法及时recv消息,导致缓冲区耗尽,发送进程send失败
unix socket本身没有提供流控机制,linux内核有没有方法可以调用查询出缓冲区剩余空间的接口
我调用下接口,可以自己预判,缓冲区不足,发送进程故意sleep,等着接收进程把堆积消息recv干净
【 在 ameng 的大作中提到: 】
我的理解和你一致,是 package 的总数,不是大小。
不过,这个 unix socket 的效率好像不太行。
我很久以前用过,用于两个进程之间的 “生产-消费”模型。
后来因为效率不行,改为共享内存。
确实是很久以前哈,现在是不是有改善不好说。
【 在 b0207191 的大作中提到: 】
: /proc/sys/net/unix/max_dgram_qlen
: 这个设置的是队列数量,也就是dgram模式下,单位世界内能够发送消息的个数?
: 并不是指单个消息的大小吧?
: ...................
--
FROM 120.36.16.*