刚刚开始学SWT,有个问题不知道如何解决
[code="java"]
public static void main(String[] args) {
try {
ClientLoginWindow window = new ClientLoginWindow();
window.open();
} catch (Exception e) {
e.printStackTrace();
}
}
public void open() {
Display display = Display.getDefault();
createContents();
shell.open();
shell.layout();
UdpThread.startup();//这是一个阻塞的线程,用于接收数据
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
}
[/code]
我在窗口启动时起了一个用于接收数据的线程,该线程是阻塞的.
问题是我在关闭窗口之后,java 进程还活着,我想应该是UdpThread线程没有终止造成的.
如果真是这样的话,我改如何终止线程,难道我要在线程里加判断如果窗口关闭了就终止?