我正在使用的库有问题。可能是图书馆的问题,也可能是我用错了!
基本上,当我这样做的时候(超时以毫秒为单位)
_ignitedHttp.setConnectionTimeout(1); // v short
_ignitedHttp.setSocketTimeout(60000); // 60 seconds
没有生成超时异常,并且运行正常,但是,当我执行以下操作时,
_ignitedHttp.setConnectionTimeout(60000); // 60 seconds
_ignitedHttp.setSocketTimeout(1); // v short
我得到一个套接字异常。
所以,我的问题是为什么我不能模拟一个连接异常?我是否误解了套接字和连接超时之间的区别?这个库是here (还没有正式发布)。
发布于 2015-12-01 05:14:32
连接超时是程序愿意等待建立与另一个进程的连接的最长时间。此时,您不会获取或发布任何应用程序数据,只是建立连接本身。
套接字超时是指等待单个数据包时的超时。一个常见的误解是套接字超时是接收完整响应的超时。因此,如果套接字超时时间为1秒,并且响应由3个IP数据包组成,其中每个响应数据包需要0.9秒才能到达,总响应时间为2.7秒,则不会有超时。
https://stackoverflow.com/questions/7360520
复制相似问题