这个问题并不是针对System.nanoTime()
的攻击。我意识到这是一个相当棘手的方法,难以正确使用。
有哪些方法可以处理System.nanoTime()
在调用之间返回相同的值?例如:多个线程调用System.nanoTime()
并获得相同的值。
我惊讶地发现,在Windows上运行测试时,我经常看到这种情况发生在我的代码库中。我们使用nanoTime
来排序跨多个线程到达的事件。也许这只是一个Windows问题,Linux的单调时钟更精细。
参考资料:
这个问题并不是针对System.nanoTime()
的攻击。我意识到这是一个相当棘手的方法,难以正确使用。
有哪些方法可以处理System.nanoTime()
在调用之间返回相同的值?例如:多个线程调用System.nanoTime()
并获得相同的值。
我惊讶地发现,在Windows上运行测试时,我经常看到这种情况发生在我的代码库中。我们使用nanoTime
来排序跨多个线程到达的事件。也许这只是一个Windows问题,Linux的单调时钟更精细。
参考资料:
nanoTime()
? - Dawood ibn Kareem