2013-04-30 248 views
2

redisGetReply可以有超時時間嗎? 我當前的代碼是redisGetReply的超時時間

while(redisGetReply(context,&reply) == REDIS_OK) { 
     //Check for isstopped 
     if yes return  
     // consume message 
     freeReplyObject(reply); 
    } 

目前,如果I信號SIGINT給程序。目前,如果我在redisGetReply中發信號通知SIGINT和此線程。它將等待,直到有來自服務器的消息。

如何使redisGetReply停止某些siganl或有readreply超時?

回答

0

正如你可以只調用redisGetReply

struct timeval tv = { 0, 1000 }; 
assert(redisSetTimeout(c,tv) == REDIS_OK); 
test_cond(redisGetReply(c,&_reply) == REDIS_ERR && 
     c->err == REDIS_ERR_IO && errno == EAGAIN); 
redisFree(c); 
之前在這個環節

Testing hiredis example

您可以設置超時見