summaryrefslogtreecommitdiffstats
path: root/vespalib
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2019-12-06 20:17:56 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2019-12-09 20:43:38 +0000
commit9156592055b871be41b1f634ee37842854dc73a4 (patch)
tree9fe512730a78b950ed07ee7f84a330821a109062 /vespalib
parent3a8c63f34d8554573b42b0c3749e44ad4f43fb0e (diff)
Use std::chrono.
Diffstat (limited to 'vespalib')
-rw-r--r--vespalib/src/vespa/vespalib/testkit/test_comparators.cpp6
-rw-r--r--vespalib/src/vespa/vespalib/testkit/test_comparators.h2
-rw-r--r--vespalib/src/vespa/vespalib/util/time.cpp7
-rw-r--r--vespalib/src/vespa/vespalib/util/time.h2
4 files changed, 15 insertions, 2 deletions
diff --git a/vespalib/src/vespa/vespalib/testkit/test_comparators.cpp b/vespalib/src/vespa/vespalib/testkit/test_comparators.cpp
index d00ad8d954c..b30b3aaa421 100644
--- a/vespalib/src/vespa/vespalib/testkit/test_comparators.cpp
+++ b/vespalib/src/vespa/vespalib/testkit/test_comparators.cpp
@@ -8,7 +8,11 @@ ostream & operator << (ostream & os, system_clock::time_point ts) {
return os << ts.time_since_epoch() << "ns";
}
+ostream & operator << (ostream & os, steady_clock::time_point ts) {
+ return os << ts.time_since_epoch() << "ns";
+}
+
}
namespace vespalib {
-} // namespace vespalib
+} \ No newline at end of file
diff --git a/vespalib/src/vespa/vespalib/testkit/test_comparators.h b/vespalib/src/vespa/vespalib/testkit/test_comparators.h
index 161c125757b..164e486cf4a 100644
--- a/vespalib/src/vespa/vespalib/testkit/test_comparators.h
+++ b/vespalib/src/vespa/vespalib/testkit/test_comparators.h
@@ -14,7 +14,7 @@ ostream & operator << (ostream & os, duration<rep, period> ts) {
}
ostream & operator << (ostream & os, system_clock::time_point ts);
-
+ostream & operator << (ostream & os, steady_clock::time_point ts);
}
diff --git a/vespalib/src/vespa/vespalib/util/time.cpp b/vespalib/src/vespa/vespalib/util/time.cpp
index d38e40a6d6a..fdd13849287 100644
--- a/vespalib/src/vespa/vespalib/util/time.cpp
+++ b/vespalib/src/vespa/vespalib/util/time.cpp
@@ -4,6 +4,13 @@
namespace vespalib {
+system_time
+to_utc(steady_time ts) {
+ system_clock::time_point nowUtc = system_clock::now();
+ steady_time nowSteady = steady_clock::now();
+ return system_time(nowUtc.time_since_epoch() - nowSteady.time_since_epoch() + ts.time_since_epoch());
+}
+
Timer::~Timer() = default;
}
diff --git a/vespalib/src/vespa/vespalib/util/time.h b/vespalib/src/vespa/vespalib/util/time.h
index a3390114bb1..3111239ffab 100644
--- a/vespalib/src/vespa/vespalib/util/time.h
+++ b/vespalib/src/vespa/vespalib/util/time.h
@@ -39,6 +39,8 @@ constexpr double to_s(duration d) {
return std::chrono::duration_cast<std::chrono::duration<double>>(d).count();
}
+system_time to_utc(steady_time ts);
+
constexpr duration from_s(double seconds) {
return std::chrono::duration_cast<duration>(std::chrono::duration<double>(seconds));
}