I/O多路復(fù)用中select指的是什么

select是用于監(jiān)視多個(gè)文件描述符狀態(tài)的變化的。即用來(lái)監(jiān)視文件描述符讀/寫/異常狀態(tài)是否就緒。

函數(shù)原型:int select(int nfds,fd_set *readfds,fd_set *writefds,fd_set *exceptfds,struct timeval *timeout);

select的幾大缺點(diǎn):

(1)每次調(diào)用select,都需要把fd集合從用戶態(tài)拷貝到內(nèi)核態(tài),這個(gè)開(kāi)銷在fd很多時(shí)會(huì)很大

(2)同時(shí)每次調(diào)用select都需要在內(nèi)核遍歷傳遞進(jìn)來(lái)的所有fd,這個(gè)開(kāi)銷在fd很多時(shí)也很大

(3)select支持的文件描述符數(shù)量太小了

??1?#include<stdio.h> ??2?#include<string.h> ??3?#include<stdlib.h> ??4?#include<unistd.h> ??5?#include<sys> ??6? ??7?int?main() ??8?{ ??9?????int?std_in?=?0; ?10?//??int?std_out?=?1; ?11?????fd_set?reads; ?12?//??fd_set?writes; ?13?????//int?max_nums?=?std_out; ?14?????int?max_nums?=?std_in; ?15?????FD_ZERO(&amp;reads); ?16?//??FD_ZERO(&amp;writes); ?17?????FD_SET(std_in,&amp;reads); ?18?//??FD_SET(std_out,&amp;writes); ?19?????struct?timeval?_timeout?=?{5,0}; ?20?????int?done?=?0; ?21?????while(!done) ?22?????{ ?23?????????_timeout.tv_sec?=?5; ??24?????????_timeout.tv_usec?=?0; ?25?????????//switch(select(max_nums+1,&amp;reads,&amp;writes,NULL,&amp;_timeout)) ?26?????????switch(select(max_nums+1,&amp;reads,NULL,NULL,&amp;_timeout)) ?27?????????{ ?28?????????????case?-1: ?29?????????????????perror("select"); ?30?????????????????break; ?31?????????????case?0: ?32?????????????????printf("timeout...n"); ?33?????????????????break; ?34?????????????default://success ?35?????????????????{ ?36?????????????????????if(FD_ISSET(std_in,&amp;reads)) ?37?????????????????????{//read ?38?????????????????????????char?buf[1024]; ?39?????????????????????????memset(buf,'

久久艹国产|
婷婷综合久久中文字幕|
亚洲精品综合久久|
欧美精品乱码99久久蜜桃|
久久精品国产亚洲AV香蕉|
亚洲精品乱码久久久久久
|
99久久国产宗和精品1上映|
成人久久免费网站|
99久久精品国产毛片|
一本一道久久a久久精品综合|
午夜精品久久久内射近拍高清|
久久亚洲国产精品成人AV秋霞|
国产精品一久久香蕉国产线看观看|
国产亚洲欧美成人久久片|
国产成人无码精品久久久免费|
久久久久久久久波多野高潮|
久久精品www|
国内精品九九久久久精品|
久久一区二区三区99|
国产精品久久久久久|
99精品国产99久久久久久97|
久久精品亚洲欧美日韩久久|
2020久久精品国产免费|
欧美伊人久久大香线蕉综合|
国产精品免费久久|
国产精品一久久香蕉国产线看观看|
四虎亚洲国产成人久久精品|
国内精品久久国产大陆|
亚洲国产精品无码久久久不卡|
精品久久久久久久国产潘金莲|
99久久夜色精品国产网站|
国产V综合V亚洲欧美久久|
狠狠88综合久久久久综合网|
国产成人久久精品一区二区三区|
亚洲欧美日韩精品久久亚洲区|
久久精品亚洲男人的天堂|
久久99精品免费一区二区|
国产精品日韩欧美久久综合|
亚洲国产成人久久综合碰碰动漫3d|
久久精品无码一区二区无码
|
亚洲精品NV久久久久久久久久|