java - 使用 Executor 批处理任务

标签 java batch-file javafx-2 executorservice

我想批处理一堆任务(更新 GUI)并每秒运行它们。 (我每秒有数百个更新,这导致 Java FX 2 卡住)

    public void update(String price){
        Platform.runLater(new Runnable(){
            @Override
            public void run() {
                priceLabel.setText(price);

            }});
    }

在 Java 中执行此操作最简单的方法是什么?

最佳答案

通常,对 GUI 的所有更新都会一起批处理并在 GUI 线程中进行处理。我认为你的架构才是你真正的问题。每 10 毫秒更改一次标签是不明智的。即使 Java FX 支持这一点,用户也只能看到闪烁。因此,我建议您更新内部数据模型,并使数据模型的更改以一定的时间速率对用户可见。这样,您的数据模型就独立于您的 UI,并且后台线程可以每 2 秒左右向您的 UI 提交单个更新。

关于java - 使用 Executor 批处理任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10680869/

相关文章:

windows - 如果名称包含批处理,则重命名文件

windows - 创建交互式窗口 .bat 文件以将开发文件复制到生产文件夹中

javafx-2 - JavaFX 中的内部框架

java - 尝试找到 Maven 的 InvoiceStorage 依赖项

java - 升级到4.2.3版本时Spring上下文初始化失败

java - 如何仅部署 Maven 项目中的源 jar?

loops - 如何在 set 命令中使用括号转义变量?

JavaFX 应用程序无法使用 native exe bundle 启动

java - 删除条形图中条形之间的空格?

java - 如何从具有多个属性的可观察列表中获取属性