gpt4 book ai didi

java - 如何区分SocketTimeoutException

转载 作者:搜寻专家 更新时间:2023-10-30 19:46:50 25 4
gpt4 key购买 nike

当我捕捉到 SocketTimeoutException 时,我需要以不同的方式处理它。我发现的唯一一件事就是依赖于 getMessage()。到目前为止,我找到了两个:

java.net.SocketTimeoutException: connect timed out
java.net.SocketTimeoutException: Read timed out

消息(连接超时,读取超时)是硬编码的吗?它们是在哪里产生的?这些消息至少有任何常量值?

最佳答案

您可以查看 Socket.isConnected。但是由于异常是由不同的方法抛出的,所以最好使用两个具有不同操作的 catch block 。

 try {
socket.connect(address);
} catch (SocketTimeoutException e) {
throw new SocketConnectionException(e);
}
try {
socket.getInputStream();
...
} catch (SocketTimeoutException e) {
throw new SocketReadException(e);
}

关于java - 如何区分SocketTimeoutException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15165794/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com