首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用SNTP时,QueryPerformanceCounter还是GetSystemTimePreciseAsFileTime?

使用SNTP时,QueryPerformanceCounter还是GetSystemTimePreciseAsFileTime?
EN

Stack Overflow用户
提问于 2016-01-01 15:26:40
回答 1查看 4K关注 0票数 5

以下一段使我感到困惑:

文章来源:获取高分辨率时间戳

当您需要分辨率为1微秒或更高的时间戳,并且不需要将时间戳同步到外部时间引用时,请选择QueryPerformanceCounter、KeQueryPerformanceCounter或KeQueryInterruptTimePrecise。当您需要具有1微秒或更高分辨率的UTC同步时间戳时,请选择GetSystemTimePreciseAsFileTime或KeQuerySystemTimePrecise。

在这里,“将同步到外部时间引用”这一短语到底意味着什么?我学到的是:

  1. 如果您的PC没有连接到GPS (通过串口或SNTP ),请使用QueryPerformanceCounter.
  2. 如果PC已连接,则使用GetSystemTimePreciseAsFileTime.

这个假设正确吗?

EN

回答 1

Stack Overflow用户

发布于 2016-12-12 19:59:33

QueryPerformanceCounter()将非常准确地告诉您自上次调用QueryPerformanceCounter()以来已经过了多长时间。这是非常有用的止损表,计算经过的时间。

GetSystemTimePreciseAsFileTime()根据某些引用(例如系统时钟)精确地告诉您当前日历/日期时间。例如,你可以用它打印“12月12日14:17:51 2016”。

因此,你的假设是不正确的。连接到GPS或网络时间源不会改变您调用其中一个或另一个。应用程序的需求将决定您应该调用哪一个。

基本上,你需要知道什么时间(GSTPAFT)或多长时间(QPC)?

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

https://stackoverflow.com/questions/34557407

复制
相关文章

相似问题

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