Java Swing到JavaFX(RMI / Threads)

时间:2016-11-23 19:55:27

标签: java multithreading rmi

目前正在教自己高级对象编程,在尝试将Javafx解决方案编写到给定的Swing解决方案时,我遇到了麻烦。

问题是用Polling开发RMI程序。我的Swing版本运行得很完美,我相信我已经缩小了这部分代码的问题。

摇摆

public static void main(String args[]) 
{
      java.awt.EventQueue.invokeLater(new Runnable() {
        public void run() 
        {
            new PollClient().setVisible(true);
        }
      });
} 

了JavaFx

public static void main(String args[])
    {
        Platform.runLater(new Runnable(){
            @Override
            public void run()
            {
                launch(args);
            }
        });
    }

任何建议都将不胜感激。

1 个答案:

答案 0 :(得分:0)

Platform.runLater在其文档中指明它在未来未指定的时间在JavaFX application thread上执行。要使此线程存在,您必须首先启动您的应用程序。

这意味着由于应用程序未启动,因此永远不会执行启动应用程序的操作。

无论如何,JavaFX应该从main函数内启动,不需要插入延迟:

Application.launch(PollClient.class, args)