我正在創建一個功能,將做一個套接字接受並返回3 vales 0 =真的很糟糕的錯誤發生退出線程 1 = ok與連接 =發生某事,做另一個接受(超時)。如果套接字接受導致異常,我怎麼才能找出原因?
我看到IOException有一個GetCause方法返回一個可拋出的對象。 這個可拋出的對象有一個get cause方法返回一個throwable,它有一個getcuase方法返回一個throwable,看起來像這樣會永遠持續下去,繼續得到另一個可拋出的對象。
我怎樣才能得到異常螞蟻關閉的原因????? 我可以使用得到的原因和一串字符串比較,但這似乎並不可靠。 特德
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;
}