gpt4 book ai didi

Java SwingWorker 不能在 main 方法中工作?

转载 作者:行者123 更新时间:2023-11-30 02:52:02 24 4
gpt4 key购买 nike

我只是尝试遵循代码,但 swingworker 没有执行。如果我将它放入 GUI 应用程序的操作中(在按钮单击事件中),它就会执行。其技术原因是什么?

public static void main(String[] args) {

new SwingWorker<Object, Object>() {
@Override
protected Object doInBackground() throws Exception {
System.out.println("do in background.....");
return null;
}
}.execute();

}

最佳答案

参见Concurrency in Swing: Initial Threads了解更多详情。

添加 SwingUtilities.invokeAndWait 后即可工作

public static void main(String[] args) {

try {
SwingUtilities.invokeAndWait(new Runnable() {

@Override
public void run() {
new SwingWorker<Object, Object>() {
@Override
protected Object doInBackground() throws Exception {
System.out.println("do in background.....");
return null;
}
}.execute();

}
});
} catch (InvocationTargetException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
}

关于Java SwingWorker 不能在 main 方法中工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38345210/

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