+void
+Time::unserialize(const std::string &base, Checkpoint *cp,
+ const string §ion)
+{
+ time_t secs;
+ time_t nsecs;
+ paramIn(cp, section, base + ".sec", secs);
+ paramIn(cp, section, base + ".nsec", nsecs);
+ sec(secs);
+ nsec(nsecs);
+}
+
+void
+sleep(const Time &time)
+{
+ timespec ts = time;
+
+#if USE_POSIX_CLOCK
+ clock_nanosleep(CLOCK_MONOTONIC, 0, &ts, NULL);
+#else
+ nanosleep(&ts, NULL);
+#endif
+}