Что означает ошибка? Мне просто нужно вернуть значение, которое я получаю из команды redis.
int getReply(char* result)
{
redisContext *c;
redisReply *reply;
c = redisConnect((char*)"127.0.0.2", 6379);
reply = redisCommand(c,"GET %s", "somekey");
if (reply->str != NULL)
{
result = strdup(reply->str);
strerror(errno); // <-------- 'Operation now in progress'. result = null
}
freeReplyObject(reply);
reply = redisCommand(c, "QUIT");
printf("Disconnecting redis: %s\n", reply->str);
freeReplyObject(reply);
return 0;
}
Это происходит, даже если я медленно перехожу через него с помощью отладчика (можно было бы предположить, что любое блокирующее действие уже давно закончилось). Отдельные строки ошибок Redis пусты, ответ-> str содержит правильную строку, которую я хочу.