【发布时间】:2017-10-07 14:28:00
【问题描述】:
我们有与网络设备集成的应用程序,用于性能和调整相关功能。
我们使用 JavaFx For UI,当我连接到网络设备时,登录并获得 UI 显示“无响应”的响应。
任何人都可以建议如何解决这个问题。Login screen shows not respongding
【问题讨论】:
标签: java windows user-interface javafx parallel-processing
我们有与网络设备集成的应用程序,用于性能和调整相关功能。
我们使用 JavaFx For UI,当我连接到网络设备时,登录并获得 UI 显示“无响应”的响应。
任何人都可以建议如何解决这个问题。Login screen shows not respongding
【问题讨论】:
标签: java windows user-interface javafx parallel-processing
UI 没有响应,因为程序正在连接到网络设备并且 UI 正在同一个 Thread 中运行。您需要启动一个新的Thread 来连接网络设备。当 UI 和与网络设备的连接在两个不同的线程中时,UI 不会冻结。
class YourThread extends Thread{
public void run(){
// Your code to connect to network device
}
public static void main(String args[]){
YourThread thread = new YourThread();
thread.start();
}
}
【讨论】:
Scene),向您的用户显示您的应用程序现在正在处理登录。您可以实现一个进度条。然后将所有连接代码放入Scene。连接完成后,那个Scene就消失了。
通过缓慢且不稳定的通道(例如(但不限于)网络)完成的任何 I/O 都必然会提供无响应的用户界面。因此,任何重要的 I/O 都应该在单独的线程中完成。
您有一些选择:
【讨论】: