我正在使用SwingWorker通过TCP连接读取数据,当数据返回时显示它。
当套接字死亡时,例如在writeTo之后,它会永远等待套接字上的输入,这就出现了问题。有什么最简单的方法可以在一段时间后超时?在这种情况下,这个是否也是最佳解决方案?在那个解决方案中,我还需要使用swingworker吗?
谢谢
new SwingWorker<EnvInfoProto, Void>() {
@Override
public EnvInfoProto doInBackground() {
try {
xxx.writeTo(socket.getOutputStream());
return ProtoMsg.parseFrom(socket.getInputStream());
} catch(IOException ignore) { }
return null;
}
@Override
public void done() {
try {
UpdateGui(get());
} catch (Exception ignore) {}
}
}.execute();
当套接字死亡时,例如在writeTo之后,它会永远等待套接字上的输入,这就出现了问题。有什么最简单的方法可以在一段时间后超时?在这种情况下,这个是否也是最佳解决方案?在那个解决方案中,我还需要使用swingworker吗?
谢谢