1. 程式人生 > >socket accept()多執行緒連線 詳解

socket accept()多執行緒連線 詳解

你也可以檢視我的其他同類文章,也會讓你有一定的收貨!

在使用accept函式的時候,如果伺服器面向多個客戶的連線,

  1. 必須使用while迴圈,每次迴圈阻塞在accept函式,等待新的連線到來,這樣才能返回新的socket。如果不使用while死迴圈每次阻塞在accept函式,也可以面向多個客戶連線,此時將在socket抽象層,自動建立socket,並且該socket不受控制
  2. 必須使用陣列(或其他資料結構)儲存當前accept建立的socket,否則下次新的socket建立後,當前的socket將不受控制。
 while (true) {
                 socket
s = ss.accept(); }