- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在尝试使用 clock_gettime()
函数并且我需要使用 CLOCK_REALTIME
因为我正在尝试同步多个设备。但是当我对 clock_gettime()
进行大约 10-20 次调用时,我观察到其中一些变为负数。为什么会发生这种情况,我该怎么做才能克服它?根据我在 Internet 上阅读的内容,发生这种情况的原因之一是因为处理器使用多个内核并且不同的内核不同步。这仍然是这种情况还是可能有其他一些因素导致 clock_gettime()
返回不稳定的值。我看过这些clock_gettime() still not monotonic - alternatives?和 Linux clock_gettime(CLOCK_MONOTONIC) strange non-monotonic behavior以及Why is clock_gettime so erratic? .但是我不能使用 CLOCK_MONOTONIC 或 CLOCK_MONOTONIC_RAW。我需要使用 CLOCK_REALTIME。在执行这些实验时,我还关闭了 NTP 同步,并观察到时间仍然会变为负值。我还能做些什么来克服这个问题?
最佳答案
您不能假设 CLOCK_REALTIME 是单调的,或者您设备的挂钟时间永远不会向前或向后跳跃。
有关详细信息,请参阅此答案: Difference between CLOCK_REALTIME and CLOCK_MONOTONIC?
其他可行的解决方案取决于您实际要解决的问题。
关于linux - clock_gettime 在 android 上不是单调的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24463690/
我正在寻找一种快速方法来使 pandas 数据帧在 x 中单调。 我当前的解决方案如下: def make_monotonic(df, cols=None): """make df monot
CLOCK_REALTIME 的一个问题是它不是单调的,如果发生 NTP 同步,时间可能会倒退。 像下面这样的事情让它变得单调是否安全? struct timespec GetMonotonicTim
我是一名优秀的程序员,十分优秀!