connect()
和 bind()
系统都调用“关联”套接字文件描述符到一个地址(通常是 ip/port 组合)。他们的原型是这样的:-
int connect(int sockfd, const struct sockaddr *addr,
socklen_t addrlen);
还有
int bind(int sockfd, const struct sockaddr *addr,
socklen_t addrlen);
两个调用之间的确切区别是什么? 什么时候应该使用 connect()
和什么时候使用 bind()
?
具体来说,在一些示例服务器客户机代码中,发现客户机正在使用 connect()
,而服务器正在使用 bind()
调用。我不是很清楚原因。