summaryrefslogtreecommitdiffstats
path: root/init/util.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'init/util.cpp')
-rw-r--r--init/util.cpp17
1 files changed, 12 insertions, 5 deletions
diff --git a/init/util.cpp b/init/util.cpp
index 888a36652..f59ba82e1 100644
--- a/init/util.cpp
+++ b/init/util.cpp
@@ -51,6 +51,8 @@
#include "property_service.h"
#include "util.h"
+using android::base::boot_clock;
+
static unsigned int do_decode_uid(const char *s)
{
unsigned int v;
@@ -199,11 +201,16 @@ bool write_file(const char* path, const char* content) {
return success;
}
-boot_clock::time_point boot_clock::now() {
- timespec ts;
- clock_gettime(CLOCK_BOOTTIME, &ts);
- return boot_clock::time_point(std::chrono::seconds(ts.tv_sec) +
- std::chrono::nanoseconds(ts.tv_nsec));
+Timer::Timer() : start_(boot_clock::now()) {
+}
+
+double Timer::duration_s() const {
+ typedef std::chrono::duration<double> double_duration;
+ return std::chrono::duration_cast<double_duration>(boot_clock::now() - start_).count();
+}
+
+int64_t Timer::duration_ms() const {
+ return std::chrono::duration_cast<std::chrono::milliseconds>(boot_clock::now() - start_).count();
}
int mkdir_recursive(const char *pathname, mode_t mode)