我正在处理一个需要时间戳才能运行线程的项目。在 Erlang 中,当我们做 now(( 时,我们会得到类似的东西
代表{megaseconds, seconds, microseconds}
{1529,709564,578215}
自纪元以来。因此,对于同时生成的两个进程,我可以获得相同的微秒值。有没有办法在 Java 中复制这个函数?
我知道Date.getTime()
它给了我们自纪元时间以来的毫秒,但它没有达到目的,因为我在除以数量级后无法从中获得唯一的微秒值。
还有其他选择吗?
System.out.println(Instant.now());
刚才的输出是:
2018-06-23T05:16:45.768006Z
在我的Mac上的Java 10上,它提供了微秒级的精度。从Java 9开始,它将在许多操作系统上,也许不是全部。Instant.now()
返回一个Instant
。Instant
实现为自纪元以来的秒和纳秒,如果需要,您可以单独获取它们。