System.nanoTime() 在多核系统上仍然存在缺陷吗?
博客文章“谨防 System.nanoTime() Java”引发了对 x86 架构上 System.nanoTime() 可靠性的担忧,其中它使用的特定于 CPU 的计数器可能会导致负时间测量由于具有异步计数器的不同处理器之间的线程调度。
但是,Sun 工程师(现为 Oracle)在 2011 年的回复澄清说,此问题已在 Windows XP Service Pack 2 中得到解决,并且不再是现代计算机上的问题Windows 和 Linux 系统。
Windows:
Linux:
其他平台:
提供的响应不涉及 SPARC 或 Solaris 系统。然而,可以合理地假设这些平台也实现了类似的机制来确保跨多个处理器的一致计时。
值得注意的是,截至 2011 年,此信息是准确的。有关System.nanoTime() 的实现和行为,请参阅最新文档和社区讨论。
以上是System.nanoTime() 在现代多核系统上真的可靠吗?的详细内容。更多信息请关注PHP中文网其他相关文章!