JavaFx异常: Not on FX application thread; currentThread = Timer-0

我的定时器任务中有两个控件:

@FXML TextArea Display;
@FXML Label Label_Display;

执行下方代码会抛出:Exception in thread "Timer-0" java.lang.IllegalStateException: Not on FX application thread; currentThread = Timer-0

Timer_task1 = new Timer();
Timer_task1.schedule(new TimerTask(){int count = 0;@Overridepublic void run(){if (TCP_IP_IsConnect){count += 1;System.out.println("Timer1!" + count);Label_Display.setText(String.format("count=%s", count));//出错之处:Not on FX         application thread; currentThread = Timer-0Display.setText(String.format("count=%s", count));//JOptionPane.showMessageDialog(null, "警告提示框"+count, "Title", JOptionPane.WARNING_MESSAGE);}}
},0,500);

 让人百思不得解的是,这俩都是控件,为什么注释掉上面代码中的

Label_Display.setText(String.format("count=%s", count));

他就正常了呢?这不都是控件吗?

没关系,问题还是可以解的,参考这里:https://stackoverflow.com/questions/26916640/javafx-not-on-fx-application-thread-when-using-timer

按他的办法,更改为以下代码后,两个控件都可以使用了,难道这就是C#里面的那个this.Invoke吗?使用委托来解决跨线程。

Timer_task1 = new Timer();
Timer_task1.scheduleAtFixedRate(new TimerTask(){int count = 0;@Overridepublic void run(){Platform.runLater(() ->{if (TCP_IP_IsConnect){count += 1;System.out.println("Timer1!" + count);Label_Display.setText(String.format("count=%s", count));Display.setText(String.format("count=%s", count));//JOptionPane.showMessageDialog(null, "警告提示框"+count, "Title", JOptionPane.WARNING_MESSAGE);}});}
},0,500);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/61396.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

xcode打包导出ipa

转载:xcode打包导出ipa 目录 转载:xcode打包导出ipa 第一步:注册苹果开发者账号 第二步:下载APP Uploader 第三步:使用xcode打包导出ipa文件,供其他人内测 众所周知,在开发苹果应用时需要使…

操作系统 -- 进程间通信

一、概述 进程经常需要与其他进程通信。例如,在一个shell管道中,第一个进程的输出必须传送给第二个进程,这样沿着管道传递下去。因此在进程之间需要通信,而且最好使用一种结构良好的方式,不要使用中断。在下面几节中&…

多模态模型评价

论文1 【Evaluating Object Hallucination in Large Vision-Language Models】 这篇文章主要是评价视觉-语言模型中出现“幻觉”的评价。论文中是这样定义幻觉的 we find that LVLMs suffer from the hallucination problem, i.e., they tend to generate objects that are in…

03微服务到底是什么

一句话导读 微服务是一种架构模式,英文翻译 microservice,微服务架构的核心理念是将大型、复杂的单体应用拆分成更小的、自治的组件,每个组件即为一个微服务 目录 一句话导读 一、微服务的定义 二、微服务的特点 1.独立性 2.松耦合 3.可伸…

TOMCAT部署及优化(Tomcat配置文件参数优化,Java虚拟机(JVM)调优)

TOMCAT tomcat :是一个开放源代码的web应用服务器,基于java代码开发的。也可以理解为tomacat就是处理动态请求和基于java代码的页面开发。可以在html当中写入java代码,tomcat可以解析html页面当中的java,执行动态请求,…

linux (platform driver)平台设备驱动匹配方法

linux2.6驱动开发系列教程_linux 驱动开发教程_老徐拉灯的博客-CSDN博客 linux驱动基础开发1——linux 设备驱动基本概念_老徐拉灯的博客-CSDN博客 linux驱动基础开发2——linux 驱动开发前奏(模块编程)_linux驱动模块开发环境_老徐拉灯的博客-CSDN博客…

IDEA每次启动indexing解决办法

每次启动indexing很浪费时间。 解决办法 setting中搜索index 设置如下: 这样设置以后,启动速度明显快多了。 参考 https://blog.csdn.net/qq_45162113/article/details/121128721

MySQL高级-存储引擎+存储过程+索引(详解01)

目录 1.mysql体系结构 2.存储引擎 2.1.存储引擎概述 2.2.1.InnoDB 2.2.2.MyISAM 2.2.3.存储引擎选择 3.存储过程 3.1.存储过程和函数概述 3.2.创建存储过程 3.3.调用存储过程 3.4.查看存储过程 3.5.删除存储过程 3.6.语法 3.6.1.变量 3.6.2.if条件判断 3.6.3.…

汽车上的电源模式详解

① 一般根据钥匙孔开关的位置来确定整车用电类别,汽车上电源可以分为常电,IG电,ACC电 1)常电。常电表示蓄电池和发电机输出直接供电,即使点火开关在OFF档时,也有电量供应。一般来讲模块的记忆电源及需要在车…

爬虫与搜索引擎优化:通过Python爬虫提升网站搜索排名

作为一名专业的爬虫程序员,我深知网站的搜索排名对于业务的重要性。在如今竞争激烈的网络世界中,如何让自己的网站在搜索引擎结果中脱颖而出,成为关键。今天,和大家分享一些关于如何通过Python爬虫来提升网站的搜索排名的技巧和实…

day7 8-牛客67道剑指offer-JZ74、57、58、73、61、62、64、65、把字符串转换成整数、数组中重复的数字

文章目录 1. JZ74 和为S的连续正数序列暴力解法滑动窗口(双指针) 2. JZ57 和为S的两个数字3. JZ58 左旋转字符串4. JZ73 翻转单词序列5. JZ61 扑克牌顺子6. JZ62 孩子们的游戏(圆圈中最后剩下的数)迭代 模拟递归 约瑟夫环问题 找规律 7. JZ64 求123...n8…

【自然语言处理】大模型高效微调:PEFT 使用案例

文章目录 一、PEFT介绍二、PEFT 使用2.1 PeftConfig2.2 PeftModel2.3 保存和加载模型 三、PEFT支持任务3.1 Models support matrix3.1.1 Causal Language Modeling3.1.2 Conditional Generation3.1.3 Sequence Classification3.1.4 Token Classification3.1.5 Text-to-Image Ge…