【发布时间】:2015-09-02 12:00:33
【问题描述】:
我的服务器端有一个客户端套接字,我想要为套接字设置Send buffer size,就像我设置Receive buffer size一样。关于如何设置它的任何想法?因为在发送大量数据时,套接字会断开连接。
【问题讨论】:
标签: python sockets size byte buffer
我的服务器端有一个客户端套接字,我想要为套接字设置Send buffer size,就像我设置Receive buffer size一样。关于如何设置它的任何想法?因为在发送大量数据时,套接字会断开连接。
【问题讨论】:
标签: python sockets size byte buffer
使用socket.setsockopt() 和SO_SNDBUF:
socket.setsockopt(socket.SOL_SOCKET, socket.SO_SNDBUF, <value>)
其中<value> 是您要设置为 Python int 的缓冲区大小。
示例:
socket.setsockopt(socket.SOL_SOCKET, socket.SO_SNDBUF, 8192) # Buffer size 8192
【讨论】:
setsocketopt() 的参数是什么。它说需要 3 个参数。
你可以使用socket.setsockopt():
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_SNDBUF, size)
【讨论】: