3个问题:
套接字的connection和read超时之间有什么区别?
将connection超时设置为"无限"是什么意思?在什么情况下,它才能保持无限循环呢?是什么触发了无限循环的消亡呢?
read超时设置为"无限"意味着什么?在什么情况下它可以保持在不定式循环中?什么能触发无限循环死亡?
3个问题:
套接字的connection和read超时之间有什么区别?
将connection超时设置为"无限"是什么意思?在什么情况下,它才能保持无限循环呢?是什么触发了无限循环的消亡呢?
read超时设置为"无限"意味着什么?在什么情况下它可以保持在不定式循环中?什么能触发无限循环死亡?
- 套接字的连接和读取超时之间有什么区别?
连接超时是进行初始连接时的超时;i、 e.完成TCP连接握手.读取超时是等待读取数据的超时时间1.如果服务器(或网络)无法传送任何数据<;超时>;在客户端进行套接字read
调用几秒钟后,将引发读取超时错误.
- 将连接超时设置为"无限"意味着什么?在什么情况下,它才能保持无限循环呢?是什么触发了无限循环的消亡呢?
这意味着连接try 可能永远是挡路.没有无限循环,但是连接try 可以通过另一个关闭套接字的线程来解除阻塞.(拨打Thread.interrupt()
也可以做到这一点…不确定.)
- 读取超时设置为"无限"意味着什么?在什么情况下,它可以保持在一个无限循环中?什么能触发无限循环结束?
这意味着套接字流上对read
的调用可能会永远阻塞.同样,没有无限循环,但read
可以通过Thread.interrupt()
调用、关闭套接字和(当然)另一端发送数据或关闭连接来解锁.
1-它不是...正如一位 comments 者所想...套接字可以打开或空闲多长时间的超时