• ScheduledFuture和RunnableScheduledFuture详解


     
    ScheduledFuture
    java.util.concurrent
    接口 ScheduledFuture<V>
    类型参数:
        V - 此 Future 返回的结果类型。
    所有超级接口:
        Comparable<Delayed>, Delayed, Future<V>
    所有已知子接口:
        RunnableScheduledFuture<V> 
    ScheduledFuture很简单,它就是在Future<V>基础上还集成了Comparable<Delayed>Delayed的接口。
    它用于表示ScheduledExecutorService中提交了任务的返回结果。我们通过Delayed的接口getDelay()方法知道该任务还有好久才被执行。
    关于ScheduledExecutorService的更多内容请参考《ScheduledThreadPoolExecutor
    主要函数
    long getDelay(TimeUnit unit)
        返回与此对象相关的剩余延迟时间,以给定的时间单位表示。
        参数:
            unit - 时间单位 
        返回:
            剩余延迟时间;零或负值指示延迟时间已经用尽
    注意1:JDK中并没提供ScheduledFuture的实现类。只有在ScheduledExecutorService中提交了任务,
    才能返回一个实现了ScheduledFuture接口的对象。
    RunnableScheduledFuture
    java.util.concurrent
    接口 RunnableScheduledFuture<V>
    类型参数:
        V - 此 Future 的 get 方法所返回的结果类型。
    所有超级接口:
        Comparable<Delayed>, Delayed, Future<V>, Runnable, RunnableFuture<V>, ScheduledFuture<V>
    public interface RunnableScheduledFuture<V>
    extends RunnableFuture<V>, ScheduledFuture<V>
    RunnableScheduledFuture作为 是实现了Runnable 的 ScheduledFuture。当成功执行RunnableScheduledFuture对象的run 方法后,可以通过该RunnableScheduledFuture对象的Future 接口并允许访问其结果。 
    RunnableScheduledFuture做为ScheduledFuture的子类,它集成了RunnableFuture<V>和ScheduledFuture<V>这两个接口。
    唯一自定义接口
    boolean isPeriodic()
            如果这是一个定期任务,则返回 true。定期任务可以根据计划重新运行。非定期任务只能运行一次。
        返回:
            如果此任务是定期的,则返回 true
  • 相关阅读:
    Shell IFS
    Crontab
    linux awk
    free
    条件语句练习2
    条件语句练习
    打印菜单
    条件测试语法
    read 命令
    jQuery(实例)
  • 原文地址:https://www.cnblogs.com/wxgblogs/p/5471315.html
Copyright © 2020-2023  润新知