linux下的非阻塞读取
如题
当有键按下的时候,返回键值,否则返回没有键按下。
我查了一些资料,说应该用ioctl该成raw流,可是却找不到,应该如何调用。请各位大虾给出段代码。
谢谢。
------解决方案--------------------fd_set rfds;
struct timeval tv;
int retval;
FD_ZERO(&rfds);
FD_SET(fileno(stdin), &rfds);
/* Wait up to five seconds. */
tv.tv_sec = 5;
tv.tv_usec = 0;
retval = select(1, &rfds, NULL, NULL, &tv);
if (retval == -1)
perror( "select() ");
else if (retval)
printf( "Data is available now.\n ");
else
printf( "No data within five seconds.\n ");