1. 程式人生 > 其它 >網路IO模型_01

網路IO模型_01

4種情況:

1、輸入操作:等待資料到達套接字接收緩衝區;

2、輸出操作:等待套接字傳送緩衝區有足夠的空間容納將要傳送的資料;

3、伺服器接收連線請求:等待新的客戶端連線請求的到來;

4、客戶端傳送連線請求:等待伺服器回送客戶端的發起的SYN所對應的ACK。

5種網路IO模型:

·阻塞IO:等待完成

·非阻塞IO:不定時來詢問

·IO複用:複用通道,根據請求來完成

·非同步IO:多搞幾個請求

·訊號驅動IO:通過訊號來通知是否可以

IO複用中的select和poll、epoll?

答:就是判斷哪個請求是可以相應的。

select和epoll的區別?

答:select僅知道有I/O事件發生,並不知道是哪個流,所以只能無差別輪詢。O(n)

  epoll會把哪個流發生了什麼樣的I/O給搞明白。O(n)

  poll本質上可select差不多,但是基於連結串列的,所以沒啥最大連結數限制。