/
O_NONBLOCK 옵션이 없는경우 … 이런식으로 데이터를 read하면 데이터가 들어올때까지 프로그램이 블락킹 상태가 됩니다. 프로그램이 멈춘다고 생각하는게 편하겠죠. write의 경우에는 상대방이 read()로 들어갈 때까지 기다립니다. O_NONBLOCK 옵션이 있는경우 … 데이터가 있든 없든 기다리지 않고 나옵니다. 읽을 데이터가 있으면 읽어온 데이터를 buf에 기록하고, res에 읽어온 바이트 수를 리턴하죠. 없다면 res로 -1을 리턴합니다. write의 경우에도 read와 같은 방식으로 동작합니다.
Search
💬

O_NONBLOCK 옵션이 없는경우 … 이런식으로 데이터를 read하면 데이터가 들어올때까지 프로그램이 블락킹 상태가 됩니다. 프로그램이 멈춘다고 생각하는게 편하겠죠. write의 경우에는 상대방이 read()로 들어갈 때까지 기다립니다. O_NONBLOCK 옵션이 있는경우 … 데이터가 있든 없든 기다리지 않고 나옵니다. 읽을 데이터가 있으면 읽어온 데이터를 buf에 기록하고, res에 읽어온 바이트 수를 리턴하죠. 없다면 res로 -1을 리턴합니다. write의 경우에도 read와 같은 방식으로 동작합니다.

출처
수집시간
2023/02/18 14:11
연결완료
1 more property
fd = open( "/dev/ttyS3", O_RDWR | O_NOCTTY ); res = read(fd, buf, 255);
C
복사
O_NONBLOCK 옵션이 없는경우
[fd = open( "/dev/ttyS3", O_RDWR | O_NOCTTY | O_NONBLOCK ); res = read(fd, buf, 255);
C
복사
O_NONBLOCK 옵션이 있는경우