1
하나의 fd에서 일부 데이터를 읽으려고했지만 "잘못된 인수입니다!"오류 메시지와 함께 실패했습니다.읽기 오류 메시지 "잘못된 인수"
struct inotify_event eventHdr;
int head_read_len = (int)read(ctx->fd, (void *)&eventHdr, sizeof(inotify_event));
if(head_read_len == -1){
_debug("read eventHdr failed!!!!\n");
perror("read eventHdr!"); //Print "Invalid argument."
}
else{
_debug("read eventHdr succeed!!!!, head_read_len:%d, name:%s\n", head_read_len, eventHdr.name);
lseek(ctx->fd, SEEK_CUR, -head_read_len);
}
노트 :
struct inotify_event
은 inotify를 시스템 호출, 자세한 내용은 사람 inotify를 위해 사용된다.fd
은 유효한 inotify 파일 설명자가 보증됩니다.
무엇이 문제입니까? 귀중한 통찰력?
인쇄/해석하기 전에'errno'의 값을 망치지 않도록하십시오. '_debug ("read eventHdr failed !!!! \ n");'의 코드가 정확하게 이것을 수행하지 않을지는 명확하지 않습니다. 그 전에'perror()'를 호출하십시오. – alk
감사. 이것은 문제이지만이 문제의 원인은 아닙니다. – FaceBro