所以如果 Event Dispatch Thread 是一个独立于主线程的线程,那让我觉得下一个代码会输出
Before
Runnable
true
After
Run Code Online (Sandbox Code Playgroud)
但是当我运行它时,就好像 EDT 在运行invokeLater(..)方法内的代码块之前等待主线程完成。输出是:
Before
After
Runnable
true
Run Code Online (Sandbox Code Playgroud)
编码:
Before
Runnable
true
After
Run Code Online (Sandbox Code Playgroud)
但是,如果我替换invokeLater(..)为invokeAndWait(..),那么我得到
Before
Runnable
true
After
Run Code Online (Sandbox Code Playgroud)
这让我觉得 EDT 并不是一个真正的独立线程,或者至少在这个例子中它的行为或只是在我看来不是。你怎么解释这个?