【发布时间】:2013-01-07 03:53:13
【问题描述】:
我有一个客户端/服务器应用程序,客户端将消息发送到服务器。由于我使用的遗留库,我的服务器无法立即读取,但必须等待条件成真,直到它读取消息。一个套接字可以存储多少数据?是否有固定的缓冲区大小/限制?
谢谢。
【问题讨论】:
标签: sockets networking client-server
我有一个客户端/服务器应用程序,客户端将消息发送到服务器。由于我使用的遗留库,我的服务器无法立即读取,但必须等待条件成真,直到它读取消息。一个套接字可以存储多少数据?是否有固定的缓冲区大小/限制?
谢谢。
【问题讨论】:
标签: sockets networking client-server
这取决于套接字接收缓冲区的大小,其默认值因操作系统而异。您可以通过setsockopt() 和 SO_RCVBUFSIZE 选项从您的应用程序中控制它。
【讨论】:
这取决于许多您无法控制的因素。这不是正确的做法。
您应该尽快读取数据,但只有在满足条件时才处理它。
编辑:我想我误解了这个问题,请参阅@EJP 的回答。
【讨论】: