網路函式listen原始碼分析

2021-09-24 08:06:31 字數 592 閱讀 7694

static int sock_listen(int fd, int backlog)

if (sock->ops && sock->ops->listen)

sock->ops->listen(sock, backlog);

// 設定socket的監聽屬性,accept函式時用到

sock->flags |= so_acceptcon;

return(0);

}複製**

static int inet_listen(struct socket *sock, int backlog)

return(0);

}複製**

// 繫結乙個隨機的埠,更新sk的源埠字段,並把sk掛載到埠對應的佇列中

static int inet_autobind(struct sock *sk)

return 0;

}複製**

listen函式主要的工作包括,設定socket和sock結構體的標記和狀態,設定syn和已連線佇列的上限。

TKeed原始碼分析之新增listen監聽事件

前面初始化監聽套接字listen fd後,現在把它加入到epoll核心事件表當中。初始化套接字開始監聽 int listen fd socket bind listen conf.port 設定為socket非阻塞 int rc make socket non blocking listen fd ...

網路函式介紹

一 int socket int domain,int type,int protocol 4.成功時返回檔案描述符,失敗時返回 1,看errno可知道出錯的詳細情況.二 int connect int sockfd,struct sockaddr serv addr,int addrlen 1.s...

dubbo原始碼 dubbo之Listener

1.exporterlistener spi public inte ce exporterlistener 使用者可以繼承該方法重寫需要的方法 public abstract class exporterlisteneradapter implements exporterlistener pub...