반응형
write set 인 wfds를 출력으로하는 select 문 예제
#include <stdio.h>
#include <unistd.h>
#include <sys/time.h>
#include <sys/select.h>
#define BUF_SIZE 30
int main(int argc, char *argv[])
{
fd_set reads, temps, wset; //fd선언
int result, str_len;
char buf[BUF_SIZE];
struct timeval timeout;
FD_ZERO(&wset); // fd배열을모두 0값으로 초기화
//FD_SET(0, &reads); // 0 is standard input(console)
FD_SET(1, &wset);
/*
timeout.tv_sec=5;
timeout.tv_usec=5000;
*/
while(1)
{
temps=wset;
timeout.tv_sec=5;
timeout.tv_usec=0;
//printf("select 직전 \n");
result=select(9, 0, &wset, 0, &timeout);
if(result==-1)
{
puts("select() error!");
break;
}
else if(result==0)
{
puts("Time-out!");
}
else
{
if(FD_ISSET(1, &wset))
{
//str_len=read(0, buf, BUF_SIZE);
//buf[str_len]=0;
//printf("message from console:");
sleep(5);
}
}
printf("끝\n");
}
//printf("끝\n");
return 0;
}
반응형
'C언어' 카테고리의 다른 글
5. 구조체 안의 멤버 변수에 특정한 문자열 잘라서 집어넣기 / 문자열을 특정 문자열 부터 삽입하기 (0) | 2022.08.18 |
---|---|
4. 구조체를 함수에서 사용하기 (0) | 2022.08.15 |
3. 구조체 포인터 (0) | 2022.08.15 |
2. 문자포인터와 정수 포인터 (0) | 2022.08.15 |
1. C언어 콘솔 찍기 (0) | 2022.05.31 |