select 模式 非阻塞

2021-09-30 05:48:50 字數 347 閱讀 4587

在windows 下設定select 模式的非阻塞。

具體實現如下

客戶端:(window)  建立乙個socket ,非阻塞, 呼叫connect , connect 立即返回。 然後用select 檢查,如果可寫, 就認為該  connect  連線成功, 在具體實現的時候發現如果不清空可寫集, 發現select 一直返回該描述字可寫。 認真看了下unp ,發現確實一值為可寫, 第一次可寫表示連線成功, 對於乙個已經連線成功的tcp 描述符,如果傳送緩衝區中可用位元組數大於傳送緩衝區的低潮標記,就返回可寫。(具體參考unp 140)。 我應該是滿足其中的(c 情況)  close 乙個socket  ,select 檢查到及可讀, 也可寫。

select與阻塞和非阻塞

這2天一直和同事在討論socket的非阻塞用在什麼場合,並且認為在select時,使用的socket要設定成阻塞的,今天在網上搜了一下,才發現,原來,我們搞錯了,乙個套接字阻塞或者不阻塞,select就在那裡,它可以針對這2種套接字使用,對任何一種套接字的輪詢檢測,超時時間都是有效的,區別就在於 當...

select與阻塞和非阻塞

這2天一直和同事在討論socket的非阻塞用在什麼場合,並且認為在select時,使用的socket要設定成阻塞的,今天在網上搜了一下,才發現,原來,我們搞錯了,乙個套接字阻塞或者不阻塞,select就在那裡,它可以針對這2種套接字使用,對任何一種套接字的輪詢檢測,超時時間都是有效的,區別就在於 當...

select與阻塞和非阻塞

這2天一直和同事在討論socket的非阻塞用在什麼場合,並且認為在select時,使用的socket要設定成阻塞的,今天在網上搜了一下,才發現,原來,我們搞錯了,乙個套接字阻塞或者不阻塞,select就在那裡,它可以針對這2種套接字使用,對任何一種套接字的輪詢檢測,超時時間都是有效的,區別就在於 當...