写点什么

Java Swing 大神必经之路 7:Swing 的任务线程与 EDT 事件分发队列模型

  • 2022 年 5 月 10 日
  • 本文字数:308 字

    阅读完需:约 1 分钟


为何 《一线大厂 Java 面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》无偿开源 威信搜索公众号【编程进阶路】 用 invokeLater,而不直接调用呢?


大多数 Swing 的 API 非线程安全,不能在任意地方调用,应该只在 EDT 中调用。


Swing 的线程安全靠事件队列和 EDT 来保证。


EventQueue 的派发机制由单独的一个线程 - 事件派发线程(EDT)管理


Swing 将 GUI 请求放入一个事件队列中执行。通过 EDT,使得非线程安全的 Swing 函数库避开了并发问题。


[](()[](()3 Swing 中的线程分类


======================================================================================================================================


一个 Swing 程序中一般有下面三种类型的线程:

用户头像

还未添加个人签名 2022.04.13 加入

还未添加个人简介

评论

发布
暂无评论
Java Swing大神必经之路7:Swing 的任务线程与 EDT 事件分发队列模型_程序员_爱好编程进阶_InfoQ写作社区