summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorantirez <antirez@gmail.com>2016-10-07 16:34:19 +0200
committerantirez <antirez@gmail.com>2016-10-07 16:34:19 +0200
commitf156038db84e25304862fcac43f1222a4382abef (patch)
treea7c10d7809b985a3f55c3cf62de5327bccef39f3
parentffb00fbcbeeb2b0f17e70fbce81928e1f7fd4b46 (diff)
downloadredis-f156038db84e25304862fcac43f1222a4382abef.tar.gz
Modules: RM_Milliseconds() API added.
-rw-r--r--src/module.c6
-rw-r--r--src/redismodule.h2
2 files changed, 8 insertions, 0 deletions
diff --git a/src/module.c b/src/module.c
index 0cba99872..2bf07aee0 100644
--- a/src/module.c
+++ b/src/module.c
@@ -648,6 +648,11 @@ void RM_SetModuleAttribs(RedisModuleCtx *ctx, const char *name, int ver, int api
ctx->module = module;
}
+/* Return the current UNIX time in milliseconds. */
+long long RM_Milliseconds(void) {
+ return mstime();
+}
+
/* --------------------------------------------------------------------------
* Automatic memory management for modules
* -------------------------------------------------------------------------- */
@@ -3532,4 +3537,5 @@ void moduleRegisterCoreAPI(void) {
REGISTER_API(IsBlockedReplyRequest);
REGISTER_API(IsBlockedTimeoutRequest);
REGISTER_API(GetBlockedClientPrivateData);
+ REGISTER_API(Milliseconds);
}
diff --git a/src/redismodule.h b/src/redismodule.h
index e931ecd07..104de9586 100644
--- a/src/redismodule.h
+++ b/src/redismodule.h
@@ -200,6 +200,7 @@ int REDISMODULE_API_FUNC(RedisModule_UnblockClient)(RedisModuleBlockedClient *bc
int REDISMODULE_API_FUNC(RedisModule_IsBlockedReplyRequest)(RedisModuleCtx *ctx);
int REDISMODULE_API_FUNC(RedisModule_IsBlockedTimeoutRequest)(RedisModuleCtx *ctx);
void *REDISMODULE_API_FUNC(RedisModule_GetBlockedClientPrivateData)(RedisModuleCtx *ctx);
+long long REDISMODULE_API_FUNC(RedisModule_Milliseconds)(void);
/* This is included inline inside each Redis module. */
static int RedisModule_Init(RedisModuleCtx *ctx, const char *name, int ver, int apiver) __attribute__((unused));
@@ -306,6 +307,7 @@ static int RedisModule_Init(RedisModuleCtx *ctx, const char *name, int ver, int
REDISMODULE_GET_API(IsBlockedReplyRequest);
REDISMODULE_GET_API(IsBlockedTimeoutRequest);
REDISMODULE_GET_API(GetBlockedClientPrivateData);
+ REDISMODULE_GET_API(Milliseconds);
RedisModule_SetModuleAttribs(ctx,name,ver,apiver);
return REDISMODULE_OK;