java - Android AsyncTask 的 JavaFX 等价物是什么?

标签 java android multithreading networking javafx

我目前必须为我的 javaFX 程序做一些网络操作,这就是我现在做的:

  • 1 个线程类
  • 1 接口(interface)回调方法
  • 1 个实现该接口(interface)的主类

我在 Main 类中实现它们,并通过其中有一个 Interface 对象的 Thread 类获取 onProgress()、onDone() 等更新。

但是在 android 中这个任务要容易得多,只需使用 AsyncTask 就可以了。

给你

//UI线程

  • onPreExecute()

//后台线程

  • doInBackground()

//UI线程

  • onProgressUpdate()

//UI线程

  • onPostExecute()

在 JavaFX 中是否也有以这种方式工作的类?我需要进度条的进度更新,我需要知道任务何时完成而不卡住 UI 屏幕。

最佳答案

我不是 Android 程序员,所以我无法验证这是否是直接等效项,但听起来您正在寻找 Task class .

您可以创建一个Task,然后在后台线程中将其用作Runnable,或者将其提交给Executor。您可以绑定(bind)到它的 progressProperty 或注册一个监听器您可以通过 setOnSucceeded 注册处理程序, setOnFailed和类似的方法。

progressProperty(和其他属性)在 FX 应用程序线程上更新(因此更新 UI 以响应其值的变化是安全的),状态事件的处理程序(成功、失败等)也会在 FX 应用程序线程上调用。

关于java - Android AsyncTask 的 JavaFX 等价物是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33878809/

相关文章:

android - 在 Activity 完成之前处理时如何在android Activity 中显示加载消息或对话框或图像?

java - 优化 - 将 std 输入转换为 java 中的整数数组

java - Hibernate 使用 javax.sql.DataSource 实例

android - 如何在字符串的末尾和/或开头保留空格?

Android LoginActivity、Facebook CallbackManager 与 Graph API 请求 : executeAndWait() method does not work

c - 在 Windows 中创建线程时不兼容的类型

c - 生产者消费者同步使用两个线程提供不正常的串行输出

java - 从 BlockingQueue 获取时缺少项目

java - 应为 BEGIN_OBJECT 但实际为 BEGIN_ARRAY

java - 如何得到所有相加成一个数的连续数集?