当前位置: 首页 > news >正文

dreamwear做网站成都网络公司网站

dreamwear做网站,成都网络公司网站,公司做网站自己可以做,唐山网站建设互众动力在JavaFX中#xff0c;要实现点击按钮启动多个周期性任务并通过多线程执行#xff0c;并在任务结束后将结果写入多个文本组件中#xff0c;同时提供另一个按钮来停止这些任务#xff0c;你可以使用ScheduledExecutorService来管理周期性任务#xff0c;并使用AtomicBoolea…在JavaFX中要实现点击按钮启动多个周期性任务并通过多线程执行并在任务结束后将结果写入多个文本组件中同时提供另一个按钮来停止这些任务你可以使用ScheduledExecutorService来管理周期性任务并使用AtomicBoolean来控制任务的执行与停止。 以下是一个简化的示例展示了如何实现这一功能 设置JavaFX界面包括两个按钮一个启动一个停止和多个文本区域用于显示结果。创建周期性任务这些任务将周期性地执行并在完成时更新UI。管理线程使用ScheduledExecutorService来调度任务并使用AtomicBoolean来安全地控制任务的执行。 示例代码 import javafx.application.Application; import javafx.application.Platform; import javafx.concurrent.Task; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.control.TextArea; import javafx.scene.layout.VBox; import javafx.stage.Stage;import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicBoolean;public class TaskSchedulerExample extends Application {private ScheduledExecutorService scheduler Executors.newScheduledThreadPool(2);private AtomicBoolean running new AtomicBoolean(false);Overridepublic void start(Stage primaryStage) {TextArea textArea1 new TextArea();TextArea textArea2 new TextArea();Button startButton new Button(Start Tasks);startButton.setOnAction(e - {running.set(true);scheduleTask(() - updateTextArea(textArea1, Task 1 result: System.currentTimeMillis()), 1, TimeUnit.SECONDS);scheduleTask(() - updateTextArea(textArea2, Task 2 result: System.currentTimeMillis()), 2, TimeUnit.SECONDS);});Button stopButton new Button(Stop Tasks);stopButton.setOnAction(e - running.set(false));VBox root new VBox(10, startButton, stopButton, textArea1, textArea2);Scene scene new Scene(root, 300, 200);primaryStage.setTitle(Task Scheduler Example);primaryStage.setScene(scene);primaryStage.show();}private void scheduleTask(Runnable task, long period, TimeUnit timeUnit) {scheduler.scheduleAtFixedRate(() - {if (running.get()) {task.run();} else {// 停止调度scheduler.shutdownNow();}}, 0, period, timeUnit);}private void updateTextArea(TextArea textArea, String text) {Platform.runLater(() - {textArea.appendText(text \n);});}public static void main(String[] args) {launch(args);} }说明 UI组件TextArea用于显示任务结果Button用于控制任务的启动和停止。任务调度使用ScheduledExecutorService的scheduleAtFixedRate方法来周期性地执行任务。任务停止通过AtomicBoolean的get方法检查是否应该继续执行任务。如果running为false则调用scheduler.shutdownNow()来尝试停止所有正在执行的任务。UI更新由于JavaFX的UI更新必须在JavaFX应用线程上执行因此使用Platform.runLater来更新TextArea。 请注意这个示例中的shutdownNow()尝试停止所有任务但已经启动但尚未完成的任务可能不会被立即停止。如果需要更严格的停止机制你可能需要在任务内部实现更复杂的逻辑来检查是否应该停止执行。
http://www.hkea.cn/news/14528468/

相关文章:

  • 网站建设多少钱十年乐云seo如何制作游戏软件教程
  • 2014网站建设网站加上视频对seo影响
  • 网站建设推广注册公司浙江网站建设售后保障
  • 自己怎么做淘宝网站wordpress 新建php文件大小
  • 达州达县网站建设seo职业培训班
  • 网站建设全部流程包括备案建设公司网站的请示
  • 12306网站花多少钱做的国内平台有哪些
  • 临安城市建设公司网站5g云网站建设
  • 福永网站优化字体设计网站有哪些
  • 深圳做网站制作门户网站 用什么语言
  • 珠海网站建设设计网站首页不见怎么做
  • 一个门户网站源码织梦音乐网站程序
  • 手机网站和微信网站有哪些策划书模板word
  • 市场营销专业网站鲅鱼圈网站开发哪家好哦
  • 专业网站建设顾问wordpress 更换编辑器
  • 珠海网站外包seo整站优化 wordpress
  • 温州市建设安监局网站网站备案完成通知书
  • 网站建设费属于宣传费吗美食分享网站怎么做
  • 唐山网站提升排名Tp5即做网站又提供api接口
  • html5个人博客网站模板wordpress下载的主题不完整
  • html5 网站框架网站制作体会
  • 网站门户设计房产网站开发公司
  • 深建市住房和城乡建设局网站网站设计全包
  • 河南建设工程协会网站太原深圳建设工程信息网站
  • 淮南市潘集区信息建设网站微商城网站建设公司
  • 永州商城网站建设wordpress模板内容页哪个文件
  • keywordspy网站做分析龙口建网站公司哪家好
  • 那些网站是针对物流做的长沙做痔疮东大医院L网站
  • 网站都有什么功能wordpress多語言插件
  • 淄博网站搭建公司wordpress自带播放器