本來我不喜歡寫筆記,都是因為我同桌,她是乙個愛寫的人,把我給影響了,邊學習,邊記錄。
i/o 復用一般用在五種場合:
1.客端處理多少描述字時。
2.乙個客戶端處理多個套接字(很少出現)。
3.如果tcp伺服器,既要監聽套接字,又要處理accept函式返回值時,一般要使用復用。
4.如果乙個伺服器要處理,tcp,udp二種協議時,要用到復用。
5.伺服器上要處理多個協議或者多個服務。應用不io復用。
當然也不是所有的io復用都應用在網路上。
io模型:
阻塞io、非阻塞io、io復用、訊號驅動、非同步io。
I O多路復用之select poll
系統提供select函式用來實現i o多路復用輸入 輸出模型。select系統呼叫是用來讓我們的程式監視多個檔案描述狀態變化的。程式會停在select這裡等待,直到被監視的檔案描述符有乙個或多個發生狀態變化。通常i o操作有兩個步驟,乙個是等,另乙個是資料搬遷。select主要是在等的這個狀態阻塞著...
IO多路復用 select poll和epoll
select include int select int maxfdp1,fd set restrict readfds,fd set restrict writefds,fd set restrict exceptfds,struct timeval restrict tvptr 引數描述 se...
IO多路復用之select poll以及epoll
處理執行態的程序 獲得cpu資源 由於需要等待一些事件的傳送而不能繼續執行時,就會祖東的轉為阻塞狀態,這是,他是不占用cpu資源的。因此也只有處於執行態的程序,才能夠轉為阻塞狀態。這時候排程器會切換到其他程序,一旦這個程序等待的事件發生了,那麼就會重新喚醒這個程序,重新等待被排程。一旦被排程器排程,...