JavaFX2中处理异步任务的最佳实践?
开始开发JavaFX应用程序我有一些关于处理concurreny的问题。我知道JavaFX中的并发工具(JavaFX2中处理异步任务的最佳实践?,javafx,javafx-2,Javafx,Javafx 2,开始开发JavaFX应用程序我有一些关于处理concurreny的问题。我知道JavaFX中的并发工具(服务,任务,时间线),但我不知道在真正的JavaFX应用程序中使用它们的最佳方法是什么 我正在使用FXML,我想开始一个非同步的、重复的任务。这是在我的Main应用程序或Controller类中创建服务的最佳方法?由于服务将更新UI,因此我仍然需要控制器的引用 是否有人有一些最佳实践来处理此问题?最佳实践可能是将控制器作为访问FXML文件中声明的组件的一种方式,而不是其他方式,即仅是UI定义的
服务
,任务
,时间线
),但我不知道在真正的JavaFX应用程序中使用它们的最佳方法是什么
我正在使用FXML,我想开始一个非同步的、重复的任务。这是在我的Main
应用程序或Controller
类中创建服务的最佳方法?由于服务
将更新UI,因此我仍然需要控制器的引用
是否有人有一些最佳实践来处理此问题?最佳实践可能是将控制器作为访问FXML文件中声明的组件的一种方式,而不是其他方式,即仅是UI定义的一部分,没有任何域逻辑。没有理由不能在同一个类中编写服务代码,但也可能没有理由这样做。正如Knut所说,您可以在控制器中实现重复任务
但仍有改进的余地,例如,您可以定义ServiceFactory,这可能很有用,因为您可能希望在创建的每个服务上添加代码,以记录此线程的运行情况/或在服务上添加默认故障处理程序
如果您使用像Spring这样的IOC框架,它将使您能够轻松地定义一个线程池,以便为具有指定参数的服务生成线程