TimeUnit

作用:

表示给定单元粒度的时间段,它提供在这些单元中进行跨单元转换和执行计时及延迟操作的实用工具方法。

常量

MICROSECONDS 微秒

MILLISECONDS  毫秒

NANOSECONDS 毫微秒

SECONS  秒

MINUTES 分钟

HOURS  小时

DAYS  天

 

主要接口

long convert(long duration,TimeUnit unit)

将给定单元的时间段转换到此单元。

class Task implements Delayed
{
 String name;
 long submitTime;
 Task(String taskName,long delayTime)
 {
  name=taskName;
  /*conver the time from MILLISECONDS to NANOSECONDS
   * *
   */
  submitTime=TimeUnit.NANOSECONDS.convert(submitTime, TimeUnit.MILLISECONDS) + System.nanoTime();  
 }
 public long getDelay(TimeUnit unit) 
 {  
  System.out.println("get delay");
         return unit.convert(submitTime - System.nanoTime(), TimeUnit.NANOSECONDS);  
  }  
    public int compareTo(Delayed o) 
    {  
     System.out.println("compareTo");
         Task that = (Task) o;  
         return submitTime > that.submitTime?1:(submitTime < that.submitTime ? -1 : 0);  
    } 
 void doTask()
 {
  System.out.println("do task:"+name);
 }
}

 

最后欢迎大家访问我的个人网站:1024s​​​​​​​

你可能感兴趣的:(java)