diff --git a/designer-base/src/main/java/com/fr/design/ui/util/UIUtil.java b/designer-base/src/main/java/com/fr/design/ui/util/UIUtil.java index b3dd08f90b..eca35f0e71 100644 --- a/designer-base/src/main/java/com/fr/design/ui/util/UIUtil.java +++ b/designer-base/src/main/java/com/fr/design/ui/util/UIUtil.java @@ -122,12 +122,20 @@ public class UIUtil { } /** - * 异步加载配置并更新UI + * 异步加载多个配置并更新UI,每个配置加载的时间通常较短,约几十毫秒。 * * @param 配置对象的类型 * @param configLoaders 配置加载器列表,每个加载器负责加载一种配置 * @param uiUpdaters UI 更新器列表,每个更新器负责在 UI 上显示对应配置的值 - * 加载的过程是异步的,UI更新会在任务完成后执行。配置加载是顺序进行的,即一个配置加载完成后,才会加载下一个配置。 + * + *

+ * 加载过程是异步的,配置加载是顺序进行的,即一个配置加载完成后,才会加载下一个配置。 + * 配置加载任务会在后台线程中顺序执行,所有配置加载完成后,UI更新操作才会依次执行。 + *

+ * 异常模式: + * - 如果在加载某个配置时发生异常,整个任务会失败,后续的配置加载将不会继续执行。 + * - 异常会被捕获为 `ExecutionException` 或 `InterruptedException`,并在 `done()` 方法中记录日志。 + * - 配置加载过程中出现的错误会导致UI更新操作被跳过。 */ public static void loadConfigsAndUpdateUI(List> configLoaders, List> uiUpdaters) { new SwingWorker, Void>() {