3

DateTime.Ticks是否可以在 C++ ATL 或 MFC 中以 .NET 对象的相同格式(以 100ns 为单位)获得刻度数?

4

1 回答 1

2

DateTime.Ticks对定时器分辨率没有任何影响,因此不保证定时器精度为 100ns。在 C++ 中,您可以使用以下方法获得类似的价值:

ULONGLONG nTicks = GetTickCount() * 10000i64;

如果您需要更准确的计时器,请寻找QueryPerformanceCounter基于实现。看:

UPD。至于与 .NETTicks属性的对齐方式,请参见上面 Hans 的评论 - 从 API 的结果中转换/计算的值也采用相同的 100 ns 单位,并由固定常数GetFileTime抵消属性。Ticks

于 2012-05-01T12:16:03.030 回答