2014-01-04 3 views

ответ

1

Вы можете получить внутреннее значение с помощью функции-члена time_point::time_since_epoch() для сохранения. И вы можете загрузить время с помощью конструктора time_point(duration).

1

Стабильные часы определяет его продолжительностью, как nanoseconds (here)

этом в случае, если используется, по крайней мере 64 бит, как его представление.

typedef duration<boost::int_least64_t, nano> nanoseconds; 

Таким образом, вы можете просто сериализовать представление продолжительности. При десериализации вы должны будете вернуть его к типу timepoint вашего времени.

На метауровне, при десериализации, момент времени не будет «соответствовать» текущему источнику постоянного синхронизма (поскольку он может быть в другом процессе после перезагрузки даже на другой машине). Таким образом, вы могли бы подумать

  • определения собственных часов специального назначения (например: archive_clock)
  • просто хранить значение наносекунд, где документация описывает свою актуальность и (отсутствует) отношение ко времени на стену часов и т.д.
Смежные вопросы