我读过一句话:"事件调度线程实际做的是运行一个操作系统级别的消息循环,以收到UI事件的通知,然后将这些事件调度到适当的Swing组件。"
如果该语句为true,则意味着当单击框架中的某个按钮时,该事件将转到正在轮询事件的操作系统,然后该操作系统将事件分派给相应的侦听器。在操作系统端或java应用程序端管理事件队列的情况如何?
如果"操作系统级别"表示某种神奇的本地操作系统交互,则该语句是不正确的。EDT只是一个普通的线程。本机代码接收来自操作系统的事件,并在EDT上调用您的处理程序。当然,鼠标点击本身必须通过JVM之外的软件进行通信,但对于Swing按钮,无论如何,"按钮"的想法完全停留在JVM内部。