首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Java NTP客户端

Java NTP客户端
EN

Stack Overflow用户
提问于 2009-05-29 09:38:33
回答 4查看 31.6K关注 0票数 21

我需要我的软件与NTP服务器通信以确定本地时钟偏移。我尝试过使用NTP包,但在Windows上运行时它的实现相当糟糕,因为使用System.currentTimeMillis()来确定org.apache.commons.net.ntp包交换之前和之后的时间。您可能知道,也可能不知道,这个值只在系统时钟滴答作响时更新,在大多数现代Win2k3服务器上是64 As或每15.625ms。这极大地限制了时钟偏移计算的准确性。

Ntpd使用CPU的高频定时器在系统时钟节拍之间进行插值,并获得更高分辨率的时间。您是否知道使用此技术或类似技术的Java实现?或者,除了Apache之外,您还知道其他的NTP实现吗?

EN

回答 4

Stack Overflow用户

发布于 2009-05-29 09:49:29

support.ntp.org上有一个NTP Java实现

票数 11
EN

Stack Overflow用户

发布于 2013-06-15 17:48:37

因为这个问题在Google上的"Java NTP客户端“排名非常靠前:

安卓有一个简单的NTP客户端的很好的、紧凑的Apache许可实现:android.net.SntpClient

需要修改它才能在非Android java上运行,但这应该是微不足道的,因为代码是大约100行代码加上另外100行详细注释,除了Android系统时钟之外没有任何外部依赖它碰巧已经准备好接受像nanoTime()这样的相对计时器,因为它已经使用了这样一个相对计时器。

票数 10
EN

Stack Overflow用户

发布于 2014-11-28 01:05:22

我已经编写了一个您可以使用的java实现(Java7):SntpClient

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/925191

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档