gpt4 book ai didi

当系统日期/时间更改为过去的一天/时间时,JavaFX 卡住

转载 作者:太空宇宙 更新时间:2023-11-03 16:49:14 25 4
gpt4 key购买 nike

我有一个奇怪的问题。我启动我的 JavaFX 程序,它使用通过套接字发送的命令在屏幕上绘制对象(矩形、圆形等)。当向后更改系统时钟时(例如,在 11:00 更改为 9:00),JavaFX 不显示执行命令的结果(即创建的对象),后台的程序逻辑工作并在控制台中打印消息收到并执行了命令,但屏幕上没有显示任何内容。通过命令更改时间:

sudo date --set 'time' && sudo hwclock --systohc

操作系统是 Ubuntu 16.04.4 LTS,内核版本为 3.4.39-s5p4418。该操作系统适用于 Smart4418 模块。

uname -a 输出:

Linux 4418Module 3.4.39-s5p4418 #1 SMP PREEMPT Fri Aug 18 14:06:20 HKT 2017 armv7l armv7l armv7l GNU/Linux

Java 版本:

java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) Client VM (build 25.171-b11, mixed mode)

我使用的JavaFX Embedded SDK是从Gluon's website下载的.

最佳答案

jfxrt.jar中的Monocle.java使用java/util/Timer.java(JDK1.8)管理屏幕。

TimerThread(JDK1.8)中的“MainLoop”方法使用“systemtime”计算执行时间。

如果“系统时间”倒退,这个 TimerThread 就会卡住。

我通过修改 Monocle.java 来调用修改后的 Timer.java 并在 jfxrt.jar 中更新它们来修复它

关于当系统日期/时间更改为过去的一天/时间时,JavaFX 卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51300293/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com