Я пишу некоторый тестовый код, где мне нужно разрешение наносекунд. Когда я использую clock_gettime с CLOCK_MONOTONIC, я получаю значение, которое я ожидаю: 3327.874384321. Когда я использую clock_gettime с CLOCK_MONOTONIC_RAW, я получаю значение, которое я не ожидал: 3327.875723000CLOCK_MONOTONIC vs CLOCK_MONOTONIC_RAW усеченные значения
Я запускать это в цикле, и все значения, возвращаемые имеют разрешение наносекунд «усеченный», 000.
Выход из uname -a: Linux raspberrypi 3.12.22+ # 691 PREEMPT Ср июн 18 18:29:58 BST 2014 armv6l GNU/Linux
Мысли о том, что происходит? Как обратиться? В настоящее время я рассматриваю возможность отключения NTP, поэтому я могу использовать CLOCK_MONOTONIC
Что делает NTP? Зачем вам нужны часы RAW? –
Основываясь на различных показаниях, CLOCK_MONOTONIC можно настроить с помощью NTP, создавая тем самым возможность загрязнения любого образца с помощью регулировки часов. Возможно, я неправильно понял ... Heres the stackoverflow ref: http://stackoverflow.com/questions/14270300/what-is-the-difference-between-clock-monotonic-clock-monotonic-raw – Nick
Как ответы на это заданный вопрос, 'CLOCK_MONOTONIC' ** не отражает разрывов ** от установки времени или от корректировок NTP. Скорее, его скорость продвижения просто корректируется, чтобы исправить неточность аппаратной тактовой частоты по отношению к реальному времени. –