Java SocketServer 不受积压值的限制

Posted

技术标签:

【中文标题】Java SocketServer 不受积压值的限制【英文标题】:Java SocketServer is not limited by backlog value 【发布时间】:2015-12-29 08:41:55 【问题描述】:

我在我的应用程序中使用客户端-服务器机制来传输内部数据。 服务器部件之一应设计为一次服务一个请求,没有线程,没有积压。然后我发现了奇怪的功能:

serverport = new ServerSocket(port, 1, InetAddress.getLoopbackAddress());

即使在一个已经积压之后,这个仍然继续接收传入连接? 有什么建议吗?我该如何解决这个问题?

【问题讨论】:

【参考方案1】:

正如Javadoc 中所说:

backlog 参数是套接字上请求的最大挂起连接数。它的确切语义是特定于实现的。特别是,一个实现可以强加一个最大长度,或者可以选择完全忽略该参数。提供的值应大于 0。如果小于或等于 0,则将使用特定于实现的默认值。

【讨论】:

以上是关于Java SocketServer 不受积压值的限制的主要内容,如果未能解决你的问题,请参考以下文章

为啥 CPython 字典不受负一和负二的哈希值的影响

BigQuery [PHP] InsertAll:未显示任何错误,但 BigQuery 表不受插入值的影响

Java -- 如何从 inputStream (socket/socketServer) 中读取未知数量的字节?

Java学习路线!kafka查看消费积压

java高并发系列 - 第15天:JUC中的Semaphore,最简单的限流工具类,必备技能

套接字积压行为