Java 我应该使用计时器或并发服务来更改日期的ObservieObject吗?

Java 我应该使用计时器或并发服务来更改日期的ObservieObject吗?,java,Java,我有一个observeValue对象LocalDate: private ObjectProperty<LocalDate> cal = new SimpleObjectProperty<>(this, "cal", LocalDate.now()); private ObjectProperty cal=new SimpleObjectProperty(这个“cal”,LocalDate.now()); 我想定期将cal对象的值更改为LocalDate.now。更可

我有一个
observeValue
对象
LocalDate

private ObjectProperty<LocalDate> cal = new SimpleObjectProperty<>(this, "cal", LocalDate.now());
private ObjectProperty cal=new SimpleObjectProperty(这个“cal”,LocalDate.now());

我想定期将
cal
对象的值更改为
LocalDate.now
。更可取的方法是:
计时器
并发

您可以使用
调度线程执行器

ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor();
executor.scheduleAtFixedRate(new Runnable() {
    public void run() {
       // Change your date object
    }
}, 0, 1, TimeUnit.SECONDS);

从计时器开始

Java5.0引入了
Java.util.concurrent
包,其中的一个并发实用程序是
ScheduledThreadPoolExecutor
它是一个线程池,用于以给定速率重复执行任务 或者拖延。它实际上是对
定时器
/
定时器任务
组合
,因为它允许多个服务线程, 接受各种时间单位不需要子类化
时间任务
(只需实现
Runnable


你能解释一下为什么它比定时器更好吗?