- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个场景,其中有服务器监听指定的 ip 和端口以及连接到该服务器的客户端。现在我正在使用 readline
方法从服务器读取响应:
String readme=bs.readline()).
这里的bs
是bufferedreader
对象。我想知道在阅读回复之前是否写了这一行
socket.setSoTimeout(1000)
如果直到 1000 毫秒都没有响应
无论套接字超时并断开连接还是不断开套接字并在自述文件
中给出空字符串。
最佳答案
其实都不是。抛出 SocketTimeoutException
。
来自docs :
setSoTimeout
public void setSoTimeout(int timeout)
throws SocketExceptionEnable/disable SO_TIMEOUT with the specified timeout, in milliseconds. With this option set to a non-zero timeout, a read() call on the InputStream associated with this Socket will block for only this amount of time. If the timeout expires, a java.net.SocketTimeoutException is raised, though the Socket is still valid. The option must be enabled prior to entering the blocking operation to have effect. The timeout must be > 0. A timeout of zero is interpreted as an infinite timeout.
Parameters:
timeout
- the specified timeout, in milliseconds. Throws:SocketException
- if there is an error in the underlying protocol, such as a TCP error.
关于java - Socket setSoTimeout 说明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11885909/
我对 socket.setSoTimeout( int ) 方法很困惑。 在我打电话的情况下 socket.setSoTimeout(4000); try{ string data =
该服务器的作用类似于回显服务器。客户端向服务器发送 10 个数据包(间隔 1 秒) 当客户端从服务器接收数据包时,有时会出现数据包丢失的情况。 因此客户端必须等待最多一秒数据包到达。如果数据包未在 1
我目前正在开发一个客户端-服务器应用程序(出于学习目的),并且我完全陷入如何正确设置 DatagramSocket 超时以及如何处理异常的问题。 服务器端看起来像这样: while (true) {
我对 socket.setSoTimeout( int ) 方法很困惑。 在我打电话的情况下 socket.setSoTimeout(4000); try{ string data =
所以我遇到了一个不工作的套接字超时。我按照现有帖子给出的所有说明进行操作,但它仍然无法正常工作(我从未收到套接字超时异常)。这是我的代码: AsyncTask task = new AsyncTask
我正在尝试自己学习 Socket。我对 Oracle 网站上的以下文字有点困惑。我对此有一些疑问。提前感谢您提供任何明确的解释。 setSoTimeout public void setSoTimeo
我正在尝试通过 DatagramSocket 发送数据,并且希望这样做,如果发送的数据超出了其确认超时,则应该重新发送。 我们可以使用 DatagramSocket.SetSoTimeout 选项吗?
当您使用 socket.seSoTimeout(5000); 在套接字上设置超时时,套接字是关闭还是在超时后停止监听?我是否必须再次打开套接字才能继续收听,还是它会自动打开? receivingSoc
我正在编写一个程序,需要读取如下形式的套接字: socket = (SSLSocket) factory.createSocket(domain, port); socket.setSoTimeout
我有一个具有三个线程的 Java 应用程序,每个线程打开一个套接字并连接到不同端口上的服务器。在建立与服务器的连接后,我在每个套接字上设置了 so_timeout。之后,线程阻塞等待 read()。只
我有一个场景,其中有服务器监听指定的 ip 和端口以及连接到该服务器的客户端。现在我正在使用 readline 方法从服务器读取响应: String readme=bs.readline()).
我有一个问题,我使用 setSoTimeout(500) 将连接超时设置为 0.5 秒并读取时间延迟,但它实际上没有工作,而是在大约 10 秒后超时就像它通常对这种异常所做的那样。是的,IP 在这种情
因此,我在客户端编写了一个线程,它尝试从套接字流中readObject()。 只要客户端连接,该线程就会运行。 可以在客户端的 GUI 上关闭与服务器的连接。如果客户端决定断开连接(这不会退出客户端程
此代码 fragment 来 self 在 Android java 中制作的 TCP 辅助函数: socket.setSoTimeout(2000);
我有一个与客户端连接以接收字符串的服务器,但是当连接丢失时,服务器会保持相同的状态,并且不会返回到尝试再次建立连接的状态。我使用了 setSoTimeout 但它不起作用。 这是我的代码: Serve
我正在尝试编写一个基于JAVA的comet HTTP流。我为此使用 apache httpClient 4.x。由于它是 Comet HTTP 流,因此所有事件都以分块数据的形式到达客户端。由于连接可
来自 setSoTimeout 的 JavaDoc Enable/disable SO_TIMEOUT with the specified timeout, in milliseconds. Wit
文档说 Socket 的 setSoTimeout(int) 方法 throws SocketException - if there is an error in the underlying pr
我是reading here, that On connect, the JVM (Java Virtual Machine) tries to resolve the hostname to IP/
以下博客解释了 ftp apache commens net libaray 的不同超时即 setDefaultTimeout()、setSoTimeout()、setDataTimeout()。 h
我是一名优秀的程序员,十分优秀!