Типичный программист | IT, программирование, разработка, ИИ
IT и технологии · 29 сентября 2026 г.
Как строго монотонное время помогает ловить ошибки
Как строго монотонное время помогает ловить ошибки По документации монотонные часы не идут назад. В реальности ОС иногда нарушает это обещание, поэтому результат системного вызова дополнительно ограничивают предыдущим значением внутри процесса. В заметке «Considering Strictly Monotonic Time» предлагается усилить защиту: возвращать максимум из показания ОС и предыдущего времени плюс одна наносекунда. Тогда проверку past <= present можно заменить на past < present. Она поймает не только движение времени назад, но и случайную передачу одного и того же значения вместо нового вызова часов. Ограничение у приёма одно: точности значения должно хватать, чтобы повторные прибавления наносекунды не увели время вперёд. Автор считает наносекундную точность достаточной.