|
|||||||||
摘要: 嵌套 | 枚举常量 | 字段 | 方法 | 详细信息: 枚举常量 | 字段 | 方法 |
java.util.concurrent
枚举 TimeUnit
java.lang.Object java.lang.Enum<TimeUnit> java.util.concurrent.TimeUnit
- 所有已实现的接口:
- Serializable, Comparable<TimeUnit>
TimeUnit 表示给定单元粒度的时间段,它提供在这些单元中进行跨单元转换和执行计时及延迟操作的实用工具方法。TimeUnit 不维护时间信息,但是有助于组织和使用可能跨各种上下文单独维护的时间表示形式。
TimeUnit 主要用于通知基于时间的方法如何解释给定的计时参数。例如,如果 lock
不可用,则以下代码将在 50 毫秒后超时:
Lock lock = ...; if ( lock.tryLock(50L, TimeUnit.MILLISECONDS) ) ...而以下代码将在 50 秒后超时:
Lock lock = ...; if ( lock.tryLock(50L, TimeUnit.SECONDS) ) ...但是注意,不保证特定超时实现能够以与给定 TimeUnit 相同的粒度通知 段。
- 从以下版本开始:
- 1.5
枚举常量摘要 | |
---|---|
MICROSECONDS |
|
MILLISECONDS |
|
NANOSECONDS |
|
SECONDS |
方法摘要 | |
---|---|
long |
convert(long duration, TimeUnit unit) 将给定单元的时间段转换到此单元。 |
void |
sleep(long timeout) 使用此单元执行 Thread.sleep.这是将时间参数转换为 Thread.sleep 方法所需格式的便捷方法。 |
void |
timedJoin(Thread thread, long timeout) 使用此时间单元执行计时的 Thread.join。 |
void |
timedWait(Object obj, long timeout) 使用此时间单元执行计时的 Object.wait。 |
long |
toMicros(long duration) 等效于 MICROSECONDS.convert(duration, this)。 |
long |
toMillis(long duration) 等效于 MILLISECONDS.convert(duration, this)。 |
long |
toNanos(long duration) 等效于 NANOSECONDS.convert(duration, this)。 |
long |
toSeconds(long duration) 等效于 SECONDS.convert(duration, this)。 |
static TimeUnit |
valueOf(String name) 返回带有指定名称的该类型的枚举常量。 |
static TimeUnit[] |
values() 按照声明该枚举类型的常量的顺序,返回 包含这些常量的数组。 |
从类 java.lang.Enum 继承的方法 |
---|
clone, compareTo, equals, getDeclaringClass, hashCode, name, ordinal, toString, valueOf |
从类 java.lang.Object 继承的方法 |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
枚举常量详细信息 |
---|
NANOSECONDS
public static final TimeUnit NANOSECONDS
MICROSECONDS
public static final TimeUnit MICROSECONDS
MILLISECONDS
public static final TimeUnit MILLISECONDS
SECONDS
public static final TimeUnit SECONDS
方法详细信息 |
---|
values
public static final TimeUnit[] values()
-
按照声明该枚举类型的常量的顺序,返回 包含这些常量的数组。该方法可用于迭代 常量,如下所示:
for(TimeUnit c :TimeUnit.values()) System.out.println(c);
-
- 返回:
- 按照声明该枚举类型的常量的顺序,返回 包含这些常量的数组。
valueOf
public static TimeUnit valueOf(String name)
- 返回带有指定名称的该类型的枚举常量。 字符串必须与用于声明该类型的枚举常量的 标识符完全匹配。(不允许有多余 的空格。)
-
- 参数:
-
指定要返回的枚举常量的名称。
- - 返回:
- 返回带有指定名称的枚举常量
- 抛出:
-
如果该枚举类型没有带有指定名称的常量,
- 则抛出 IllegalArgumentException
convert
public long convert(long duration, TimeUnit unit)
- 将给定单元的时间段转换到此单元。从较细粒度到较粗粒度的舍位转换,这样会失去精确性。例如,将 999 毫秒转换为秒的结果为 0。使用参数从较粗粒度到较细粒度转换,如果参数为负,则在数字上溢出至 Long.MIN_VALUE,如果为正,则为 Long.MAX_VALUE。
-
- 参数:
-
duration
- 给定 unit 中的时间段 -
unit
- duration 参数的单元 - 返回:
- 此单元中的转换时间段;如果转换将负溢出,则返回 Long.MIN_VALUE;如果转换将正溢出,则返回 Long.MAX_VALUE。
toNanos
public long toNanos(long duration)
- 等效于 NANOSECONDS.convert(duration, this)。
-
- 参数:
-
duration
- 时间段 - 返回:
- 转换时间段,如果转换将负溢出,则返回 Long.MIN_VALUE;如果转换将正溢出,则返回 Long.MAX_VALUE。
- 另请参见:
-
convert(long, java.util.concurrent.TimeUnit)