From 33d2761bc05710b4dd6d036e04ca1b3c9d4b2a39 Mon Sep 17 00:00:00 2001 From: antirez Date: Fri, 1 Jul 2011 15:47:48 +0200 Subject: [PATCH] ustime() backported from unstable, used by slow log --- src/redis.h | 1 + src/util.c | 12 ++++++++++++ 2 files changed, 13 insertions(+) diff --git a/src/redis.h b/src/redis.h index 70d20db47..8a7a47fda 100644 --- a/src/redis.h +++ b/src/redis.h @@ -869,6 +869,7 @@ int ll2string(char *s, size_t len, long long value); int isStringRepresentableAsLong(sds s, long *longval); int isStringRepresentableAsLongLong(sds s, long long *longval); int isObjectRepresentableAsLongLong(robj *o, long long *llongval); +long long ustime(void); /* Configuration */ void loadServerConfig(char *filename); diff --git a/src/util.c b/src/util.c index e304ff839..ef9b901fd 100644 --- a/src/util.c +++ b/src/util.c @@ -1,6 +1,7 @@ #include "redis.h" #include #include +#include /* Glob-style pattern matching. */ int stringmatchlen(const char *pattern, int patternLen, @@ -241,3 +242,14 @@ int isObjectRepresentableAsLongLong(robj *o, long long *llongval) { return isStringRepresentableAsLongLong(o->ptr,llongval); } } + +/* Return the UNIX time in microseconds */ +long long ustime(void) { + struct timeval tv; + long long ust; + + gettimeofday(&tv, NULL); + ust = ((long long)tv.tv_sec)*1000000; + ust += tv.tv_usec; + return ust; +}