【发布时间】:2017-02-01 14:51:47
【问题描述】:
我的一个实现类的方法需要很长时间才能完成,这让我的视图冻结。所以这些方法必须是线程的!
所有这些方法都返回带有HashMaps 或Lists 的数据。
我的控制器通过调用它们来获取这些数据,然后将它们传递给视图。
我不知道应该在哪里创建线程。 它应该在控制器层还是在实现类中(以及如何因为我在那里有很多方法)。
我还需要仅在线程工作完成时刷新视图。 这些方法将被重新调用。
我真的迷失在我遇到的所有线程技术中。
控制器:
SomeParser someParser = new FirstParserImpl();
HashMap<String,String> map = someParser.parseSomething();
loadTableView(map);
FirstParserImpl:
public HashMap<String,String> parseSomething() {
//opening http connection, scrape and parse data. This takes long time!
return map;
}
【问题讨论】:
-
如果我们没有代码,很难知道如何提供帮助。
-
@MichaelPickett 对不起,我认为我的问题已经足够描述了。请给我一些时间来发布我的一些代码。谢谢
-
为了您的眼睛,我试图简单地说明我如何调用这些方法。
标签: java multithreading model-view-controller javafx