read에 관한 질문
글쓴이: cjwlife / 작성시간: 화, 2014/05/13 - 6:29오후
안녕하세요. daemon하나를 구현하고 있는데 read에서 잘 안되는점이 있어서 글을 올려봅니다.
int main(){
int ret,fd;
ret = mkfifo(./fifo, 0666);
fd = open(./fifo,O_RDWR);
while(1){
memset(rbuff, 0x00, sizeof(rbuff));
rsize = read(fd, rbuff, sizeof(rbuff));
if(rsize>0) {
// 포직스 타이머 내용.
}else{
}
}
}
위와 같이 daemon이 돌고 있고 write해주는 곳에서는 WRONLY로 timeout시간을 써주어
타이머가 동작하는 내용입니다. 근데 타이머가 동작하고 있는 도중에 새로는 값들이 fifo에 쓰여지면
read가 안되는 경우가 있는데 왜그런걸까요?
Forums:
포직스 타이머 내용에서 실행이 멈춰있는것 아닌가요?
포직스 타이머 내용에서 실행이 멈춰있는것 아닌가요? 다시 read에 들어갈일이 없으니 그럴것 같은데.
---
http://coolengineer.com
댓글 달기