gpt4 book ai didi

java - 如果socketaccept导致异常,如何找出原因?

转载 作者:行者123 更新时间:2023-12-01 15:37:59 25 4
gpt4 key购买 nike

我正在创建一个函数,它将执行套接字接受并返回 3 个值0=退出线程发生非常严重的错误1=确定与连接对话=发生了一些事情,再次接受(超时)。

我看到 IOException 有一个 GetCause 方法,它返回一个可抛出对象。这个 throwable 对象有一个返回 throwable 的 get Cause 方法,该方法有一个返回 throwable 的 getcuase 方法,看起来这会永远持续下去,继续获取另一个 throwable 对象。

我怎样才能得到异常 Ant 关闭的原因???我可以使用 get Reason 和一堆字符串比较,但这似乎并不可靠。特德

int GetClient()
{
try {
server.setSoTimeout(5*1);
connection=server.accept();
}
catch(IOException ec)
{
System.out.println(Thread.currentThread()+":"+ec.getMessage());


return 2; // for time out or something where we can try again
// return a zero saying we must stop erra o bad

}
return 1;
}

最佳答案

accept()

抛出各种异常。SocketTimeoutException 扩展了 IOException,但您可以在捕获一般 IOException 之前“捕获”它。这将允许您返回建议您可以重试的值。

这是否涵盖了您的 3 种情况:Ok、IOException 和 Timeout?

关于java - 如果socketaccept导致异常,如何找出原因?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8569605/

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