在传统的嵌入式编程中,我们将提供如下的延迟函数:
for(i=0;i<255;i++)
for(j=0;j<255;j++);
Run Code Online (Sandbox Code Playgroud)
在微处理器的视图中,这是sleep()函数的工作原理吗?
C中的sleep()函数有替代方法吗?
int select(int nfds,
fd_set *readfds,
fd_set *writefds,
fd_set *exceptfds,
struct timeval *timeout);
Run Code Online (Sandbox Code Playgroud)
第一个参数select,nfds被认为是最大的文件描述符加1,应至少为1
,但我已经看到了一些代码设置NFDs的是0,这是使用合法的吗?
另外,返回值select设置为EINVALwhen nfds为负数或timeout包含无效值.同样,它没有指定nfds0 时发生的情况.