Сон до начала следующей минуты

Я пытаюсь написать код для сна до начала следующей минуты в местном часовом поясе, но испытываю большие трудности. Библиотека time всегда была одним из моих слабых мест, поэтому я предполагаю, что есть какой-то простой способ сделать это.

Я думал просто вычислить новое TimeOfDay, но это не будет работать с 23:59 до 00:00, и, предположительно, вызовет путаницу при переходе на летнее время.

Обработка високосных секунд тоже была бы приятным бонусом.

Использование Control.Concurrent.threadDelay для выполнения сна кажется мне самым простым методом, поэтому альтернативным вопросом будет: Как я могу получить количество микросекунд до начала следующей минуты? DiffTime и NominalDiffTime будут вполне приемлемыми способами достижения этой цели.

11
задан ehird 20 December 2011 в 12:01
поделиться