diff options
author | antirez <antirez@gmail.com> | 2011-07-01 15:47:48 +0200 |
---|---|---|
committer | antirez <antirez@gmail.com> | 2011-07-01 15:47:48 +0200 |
commit | 33d2761bc05710b4dd6d036e04ca1b3c9d4b2a39 (patch) | |
tree | a207261c08511ebb783ee2a9d7f6d4561da6d432 | |
parent | ad6347b74ea940bea8024f9279083b27cd2da036 (diff) | |
download | redis-33d2761bc05710b4dd6d036e04ca1b3c9d4b2a39.tar.gz |
ustime() backported from unstable, used by slow log
-rw-r--r-- | src/redis.h | 1 | ||||
-rw-r--r-- | src/util.c | 12 |
2 files changed, 13 insertions, 0 deletions
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 <ctype.h> #include <limits.h> +#include <sys/time.h> /* 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; +} |