【发布时间】:2011-08-12 15:12:17
【问题描述】:
我正在使用 SwingWorker 通过 TCP 连接读取数据并在返回时显示。
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 之后,它永远等待套接字上的输入。一段时间后超时的最简单方法是什么? this 在这种情况下也是最好的解决方案吗?我还会在那个解决方案中使用 swingworker 吗?
谢谢
【问题讨论】:
标签: java swing timeout swingworker