窗口大小调整后,JavaFX WebEngine无限循环

时间:2015-12-09 13:07:01

标签: java javafx javafx-8 javafx-webengine efxclipse

我们有一个应用程序,它使用WebView显示OpenLayers的地图。数据来自后台的GeoServer。到目前为止,我们的应用程序由我们的客户在FullHD(1920x1080)运行,到目前为止没有引起任何问题。现在,我们的客户已经更换了现在具有WQXGA(2560x1600)分辨率的显示器。我们的应用程序在FullHD中运行完美,没有任何问题,但只要我们在WQXGA显示屏上全屏显示应用程序,WebView就会变灰,GUI冻结,GUI不再响应。

enter image description here

系统监视器显示背景上有一些繁重的计算。我使用VisualVM了解更多信息。我分析了方法调用ant,结果发现WebView大部分时间都在做并行处理。我还研究了这种方法的描述,并指出它是用于在显示之前更新所有子节点。我不知道WebView如何在内部工作,但我们还有大约1k-2k的特征多边形,它们通过Openelayer显示(最后是JavaScript对象)。

enter image description here

内存消耗在整个过程中也很稳定。我还注意到WebView的宽度略大于FullHD。到目前为止,我没有证实这一点,它只是一个视觉估计。对我来说,WebView的行为看起来像一个无限循环,因为即使在45分钟后,系统利用率仍然相同,我决定杀死GUI。

enter image description here

以下是更多规格:

Java版本:

java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)

JavaFX版本

javafx.runtime.version=8.0.5

我们使用Ubuntu 14.04.3 LTS

有什么办法可以找出造成这个错误的原因吗?有可能以某种方式配置WebView以防止发生这种情况吗?

0 个答案:

没有答案