오류는 무엇을 의미합니까? redis 명령에서 얻은 값을 반환하면됩니다.strdup 오류 : '작업 진행 중'
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 특정 오류 문자열은 비어 있으며, reply-> str은 내가 원하는 올바른 문자열을 가지고 있습니다.
strdup 오류? 진심이야? –
예? 정말 바보 같은 일이라면 제게 말해주세요. ( – Blub
strdup 만 오류가 발생하면 메모리가 부족합니다. –