Use steady clock for getTime methods. Fixes KT-33934

This commit is contained in:
Pavel Punegov
2019-09-27 14:57:49 +03:00
committed by Pavel Punegov
parent 3ab7a9865d
commit 820dae8ba8
+6 -3
View File
@@ -263,16 +263,19 @@ uint64_t getTimeNanos() {
// Time operations.
using namespace std::chrono;
// Get steady clock as a source of time
using steady_time_clock = std::conditional<high_resolution_clock::is_steady, high_resolution_clock, steady_clock>::type;
uint64_t getTimeMillis() {
return duration_cast<milliseconds>(high_resolution_clock::now().time_since_epoch()).count();
return duration_cast<milliseconds>(steady_time_clock::now().time_since_epoch()).count();
}
uint64_t getTimeNanos() {
return duration_cast<nanoseconds>(high_resolution_clock::now().time_since_epoch()).count();
return duration_cast<nanoseconds>(steady_time_clock::now().time_since_epoch()).count();
}
uint64_t getTimeMicros() {
return duration_cast<microseconds>(high_resolution_clock::now().time_since_epoch()).count();
return duration_cast<microseconds>(steady_time_clock::now().time_since_epoch()).count();
}
#endif