select&pselect

简介:

在所有POSIX兼容的平台上,select函数使我们可以执行I/O多路转换。select 传的参数内容有:
描述符;
描述符的条件;
等待时间;
已经准备好的描述符的总数量;
对于读、写或者异常这三个条件中的每一个,描述符都已经准备好;
'int select(int fd, fd_set restrict readfds, fd_set restrict writefds, fd_set restrict exceptfds, struct timeval restrict tvptr);
其中:tvptr指最长等待时间,有三种情况:永远等待;捕捉到一个信号则返回;根本不等待;
不阻塞select函数的方法:rvptr->tv_sec!=0 || tvptr->tv_usec!=0等待的秒数和微妙数。
readfds, writefds,exceptfds:指向描述符集的指针。可读、科协、异常三种情况的描述符集合,
fd_set数据类型:分配一个这种类型的变量,将这种类型的一个变量值赋给同类型的另一个变量,或对这种类型的变量使用下列4个函数中的一个:
int FD_ISSET(int fd, fd_set* fdset);
void FD_CLR(int fd, fd_set* fdset);
void FD_SET(int fd, fd_set* fdset);
void FD_ZERO(fd_set* fdset);

目录
打赏
0
0
0
0
1
分享
相关文章
不推荐SELECT * FROM table原因
根据非索引查询 :B+树的叶子节点放数据表行数据,叶子节点存放主键,如果想获得行数据信息,则需要再跑到主键索引去拿数据,这叫回表,速度慢。但不管是主键还是非主键索引,他们的叶子结点数据都是有序的。比如在主键索引中,这些数据是根据主键id的大小,从小到大,进行排序的。**1.**根据索引查询 :B+树的父节点放索引数据,速度快,叶子(父)节点会存放完整的行数据西信息。
390 0
|
5月前
|
INTO SELECT
【11月更文挑战第10天】
50 3
SELECT INTO
【11月更文挑战第08天】
59 2
|
5月前
|
SQL
SELECT DISTINCT
【11月更文挑战第02天】
94 1
select
【10月更文挑战第20天】
65 5
到底为什么不建议使用SELECT *?
“不要使用SELECT *”几乎已经成为了MySQL使用的一条金科玉律,就连《阿里Java开发手册》也明确表示不得使用`*`作为查询的字段列表,本文从4个方面给出理由。
到底为什么不建议使用SELECT *?
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等