常見(jiàn)IO模型

阻塞和非阻塞:

阻塞和非阻塞指的是執(zhí)行一個(gè)操作是等操作結(jié)束再返回算谈,還是馬上返回痹栖。
比如餐館的服務(wù)員為用戶點(diǎn)菜辣恋,當(dāng)有用戶點(diǎn)完菜后惫撰,服務(wù)員將菜單給后臺(tái)廚師羔沙,此時(shí)有兩種方式:
阻塞:第一種:就在出菜窗口等待,直到廚師炒完菜后將菜送到窗口厨钻,然后服務(wù)員再將菜送到用戶手中扼雏;
非阻塞:第二種:等一會(huì)再到窗口來(lái)問(wèn)廚師,某個(gè)菜好了沒(méi)夯膀?如果沒(méi)有先處理其他事情诗充,等會(huì)再去問(wèn)一次;

同步和異步:

同步:還拿前面點(diǎn)菜為例诱建,服務(wù)員直接跟廚師打交道蝴蜓,菜出來(lái)沒(méi)出來(lái),服務(wù)員直接指導(dǎo)涂佃,但只有當(dāng)廚師將菜送到服務(wù)員手上励翼,這個(gè)過(guò)程才算正常完成蜈敢,這就是同步的事件
異步:同樣是點(diǎn)菜,有些餐館有專門的傳菜人員汽抚,當(dāng)廚師炒好菜后抓狭,傳菜員將菜送到傳菜窗口,并通知服務(wù)員造烁,這就變成異步的了否过。

其實(shí)異步還可以分為兩種:帶通知的和不帶通知的。前面說(shuō)的那種屬于帶通知的惭蟋。有些傳菜員干活可能主動(dòng)性不是很夠苗桂,不會(huì)主動(dòng)通知你,你就需要時(shí)不時(shí)的去關(guān)注一下?tīng)顟B(tài)告组。這種就是不帶通知的異步煤伟。

非阻塞I/O ,I/O復(fù)用木缝,信號(hào)驅(qū)動(dòng)式I/O其實(shí)都是非阻塞的便锨,當(dāng)然是針對(duì)“請(qǐng)求”這個(gè)階段。非阻塞式是主動(dòng)查詢外設(shè)狀態(tài)我碟。I/O復(fù)用里的select放案,poll也是主動(dòng)查詢,不同的是select和poll可以同時(shí)查詢多個(gè)fd(文件句柄)的狀態(tài)矫俺,另外select有fd個(gè)數(shù)的限制吱殉。epoll是基于回調(diào)函數(shù)的。信號(hào)驅(qū)動(dòng)式I/O則是基于信號(hào)消息的厘托。這兩個(gè)應(yīng)該可以歸到“被動(dòng)接收消息”那一類中友雳。最后就是偉大的AIO的出現(xiàn),內(nèi)核把什么事都干了催烘,對(duì)上層應(yīng)用實(shí)現(xiàn)了全異步沥阱,性能最好,當(dāng)然復(fù)雜度也最高伊群。
阻塞I/O:所有過(guò)程全阻塞
非阻塞I/O:如果沒(méi)有數(shù)據(jù)buffer考杉,則立即返回EWOULDBLOCK
I/O復(fù)用(select和poll):在wait和copy階段分別阻塞
信號(hào)驅(qū)動(dòng)I/O(SIGIO):在wait階段不阻塞,但copy階段阻塞(信號(hào)驅(qū)動(dòng)I/O舰始,即通知)
異步I/O(aio):完全無(wú)阻塞方式崇棠,當(dāng)I/O完成是提供信號(hào)

非阻塞型IO是忙等待

一個(gè)進(jìn)程處理多個(gè)請(qǐng)求,因?yàn)榈谝贿^(guò)程被徹底解放丸卷。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末枕稀,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌萎坷,老刑警劉巖凹联,帶你破解...
    沈念sama閱讀 206,311評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異哆档,居然都是意外死亡蔽挠,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門瓜浸,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)澳淑,“玉大人,你說(shuō)我怎么就攤上這事插佛「苎玻” “怎么了?”我有些...
    開(kāi)封第一講書人閱讀 152,671評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵雇寇,是天一觀的道長(zhǎng)氢拥。 經(jīng)常有香客問(wèn)我,道長(zhǎng)谢床,這世上最難降的妖魔是什么兄一? 我笑而不...
    開(kāi)封第一講書人閱讀 55,252評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮识腿,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘造壮。我一直安慰自己渡讼,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,253評(píng)論 5 371
  • 文/花漫 我一把揭開(kāi)白布耳璧。 她就那樣靜靜地躺著成箫,像睡著了一般。 火紅的嫁衣襯著肌膚如雪旨枯。 梳的紋絲不亂的頭發(fā)上蹬昌,一...
    開(kāi)封第一講書人閱讀 49,031評(píng)論 1 285
  • 那天,我揣著相機(jī)與錄音攀隔,去河邊找鬼皂贩。 笑死,一個(gè)胖子當(dāng)著我的面吹牛昆汹,可吹牛的內(nèi)容都是我干的明刷。 我是一名探鬼主播,決...
    沈念sama閱讀 38,340評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼满粗,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼辈末!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書人閱讀 36,973評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤挤聘,失蹤者是張志新(化名)和其女友劉穎轰枝,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體组去,經(jīng)...
    沈念sama閱讀 43,466評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡鞍陨,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,937評(píng)論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了添怔。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片湾戳。...
    茶點(diǎn)故事閱讀 38,039評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖广料,靈堂內(nèi)的尸體忽然破棺而出砾脑,到底是詐尸還是另有隱情,我是刑警寧澤艾杏,帶...
    沈念sama閱讀 33,701評(píng)論 4 323
  • 正文 年R本政府宣布韧衣,位于F島的核電站,受9級(jí)特大地震影響购桑,放射性物質(zhì)發(fā)生泄漏畅铭。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,254評(píng)論 3 307
  • 文/蒙蒙 一勃蜘、第九天 我趴在偏房一處隱蔽的房頂上張望硕噩。 院中可真熱鬧,春花似錦缭贡、人聲如沸炉擅。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 30,259評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)谍失。三九已至,卻和暖如春莹汤,著一層夾襖步出監(jiān)牢的瞬間快鱼,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 31,485評(píng)論 1 262
  • 我被黑心中介騙來(lái)泰國(guó)打工纲岭, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留抹竹,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,497評(píng)論 2 354
  • 正文 我出身青樓荒勇,卻偏偏與公主長(zhǎng)得像柒莉,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子沽翔,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,786評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容