并发调用System.currentTimeInMillis()时的性能瓶颈

Bri*_*n M 6 java concurrency clojure

我怀疑来自不同线程(> 15)的调用会对性能产生负面影响.有没有更好的方法来获得并发应用程序中的系统时间?

Tom*_*ine 5

如果确实存在问题,您可以让后台线程将当前时间存储在a中volatile.或者只是不经常打电话.


Alf*_*red 0

只是一个小提示:

我从谷歌工程师和其他程序员那里了解到,最好使用 System.nanotime。例如约书亚·布洛赫

对于间隔计时,始终优先使用 System.nanoTime 而不是 System.currentTimeMillis

  • 没有回答问题。另外,即使根据您的引用,System.nanoTime 也是间隔计时的首选,但没有提及 OP 使用系统时间的用途。间隔计时在这里可能不适用。 (3认同)