为什么调用Later在主线程中执行?
2022-09-01 19:49:30
我刚刚遇到了这个“错误”,但我不确定这是否是有意的:代码:
public static Object someMethod(){
assert SwingUtilities.isEventDispatchThread();
return new Object();
}
public static void main(String[] args){
SwingUtilities.invokeLater(() -> someMethod().toString());//First Example
SwingUtilities.invokeLater(someMethod()::toString);//Second Example
}
在第一个示例中,它是在 swing Thread 上执行的,但在第二个示例中,它不是,尽管在我看来应该是这样。someMethod
这是一个错误还是故意的?