栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Java Swing-在EDT上运行

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java Swing-在EDT上运行

  1. 一个好的规则是所有操作(访问/更新/ …)都应在EDT上进行。javadoc中提到了一些例外(某些类的某些方法),但是很难记住它们,以至于坚持“在EDT上做所有事情”的方法比较容易。不会引发异常(幸运的是,JavaFX修复了此缺点)。您可以使用定制
    RepaintManager
    来检测大多数此类违规:请参阅本文。
  2. 用户触发的所有内容均在EDT上处理。例如,如果用户单击一个按钮,
    actionPerformed
    则相应的
    Action
    ActionListener
    将在EDT上被调用。
  3. 正确
  4. 首先安排的事情将首先执行。该
    invokeLater
    调用只是
    Runnable
    在队列末尾添加。稍候再使用
    invokeLater
    第二次,将
    Runnable
    在先前安排的时间之后添加此新内容
    Runnable
  5. 看一下代码
    doneEDT
    private void doneEDT() {Runnable doDone =     new Runnable() {        public void run() { done();        }    };if (SwingUtilities.isEventDispatchThread()) {    doDone.run();} else {    doSubmit.add(doDone);}

    }



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/494976.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号