请问java.util.concurrent.TimeUnit 这个类里的TimeUnit.MILLISECONDS.sleep(1);是什么意思??
知道的请帮忙回答我,越详细越好。
在线等中。

解决方案 »

  1.   

    TimeUnit 表示给定单元粒度的时间段,它提供在这些单元中进行跨单元转换和执行计时及延迟操作的实用工具方法。TimeUnit 不维护时间信息,但是有助于组织和使用可能跨各种上下文单独维护的时间表示形式。 
    TimeUnit 主要用于通知基于时间的方法如何解释给定的计时参数。例如,如果 lock 不可用,则以下代码将在 50 毫秒后超时:   Lock lock = ...;
      if ( lock.tryLock(50L, TimeUnit.MILLISECONDS) ) ... 而以下代码将在 50 秒后超时: 
      Lock lock = ...;
      if ( lock.tryLock(50L, TimeUnit.SECONDS) ) ...可选方式共有四种:
    MICROSECONDS 
                
    MILLISECONDS 
                
    NANOSECONDS 
                
    SECONDS 
     
    这个仅仅告诉使用TimeUit的类,我用什么做来做单位TimeUnit.MILLISECONDS.sleep(1)  //应该表示是休息1毫秒
      

  2.   

    就是控制时间单位精度的我如果想用秒做单位,就用TimeUit.SECONDS 
    想用纳秒就用  TimeUit.NANOSECONDS 
    想用毫秒秒就用  TimeUit.MILLISECONDS 
    微秒    TimeUit.MICROSECONDS 比如说 像线程池的invokeAllExecutorService.invokeAll(tasks,10, TimeUit.SECONDS ) //表示最长等待10秒
    ExecutorService.invokeAll(tasks,10, TimeUit.MICROSECONDS ) //表示最长等待10微秒
    ExecutorService.invokeAll(tasks,10, TimeUit.MILLISECONDS ) //表示最长等待10毫秒
      

  3.   


    大致明白了TimeUnit.MILLISECONDS.sleep(1)这里的意思就是睡眠1毫秒的意思了。
      

  4.   

    是一个线程安全的 sleep而已
      

  5.   

    java.util.concurrent.TimeUnit 是个枚举类TimeUnit.MILLISECONDS 是其中的一个枚举值,表示毫秒的意思TimeUnit.MILLISECONDS.sleep(1) 顾名思义就是以毫秒为时间单位睡觉 1 毫秒