共找到8條詞條名為listen的結果 展開
listen
c語言函數
listen在套接字函數中表示讓一個套接字處於監聽到來的連接請求的狀態
#include
#include
#include
或
#include
int listen(int fd, int backlog);
int listen(SOCKET sockfd, int backlog);
listen函數使用主動連接套接字變為被連接套介面,使得一個進程可以接受其它進程的請求,從而成為一個伺服器進程。在TCP伺服器編程中listen函數把進程變為一個伺服器,並指定相應的套接字變為被動連接。
listen函數一般在調用bind之後-調用accept之前調用。
sockfd 一個已綁定未被連接的套接字描述符
backlog 連接請求隊列(queue of pending connections)
的最大長度(一般由2到4)。用SOMAXCONN則由
系統確定。
無錯誤,返回0,
否則,返回SOCKET ERROR,windows上可以調用函數WSAGetLastError取得錯誤代碼,在Linux可使用errno。
(1) 執行listen 之後套接字進入被動模式。
(2) 隊列滿了以後,將拒絕新的連接請求。客戶端將出現連接D 錯誤WSAECONNREFUSED。
(3) 在正在listen的套接字上執行listen不起作用。