您可能偶尔会看到这样的画面,进而疑惑自己的 IDE 究竟出了什么问题,为何会出现冻结! 这是一个棘手的问题,各类错误与性能问题都有可能导致 UI 冻结。
JetBrains IDE 基于 UI 框架 (Java AWT) 构建,该框架采用单线程模式,即通过事件调度线程 (EDT) 执行绘制操作与处理用户输入事件。
当 IDE 无法在 EDT 上执行操作时,就会发生 UI 冻结,进而导致用户无法与 IDE 进行交互。 这篇博文旨在整合我们关于 UI 冻结原因的相关知识。 您可以参考本文来调查和解决 IDE 插件中的 UI 冻结!
IntelliJ 平台的 UI 架构
由于我们的 UI 框架基于单…