进程间通信——套接字通信常用函数
开发文档写的挺详细的,更加方便。
Socket
int socket(int domain, int type, int protocol);
开发文档:
domain:标识协议族,ipv4和v6等
type:通信类型,tcp/udp等
protocol一般是0,自动选择合适的协议
Connect
int connect(int sockfd, const struct sockaddr *addr,socklen_t addrlen);
开发文档:
sockfd:创建的socket文件描述符(你要通过它发信息)。
*addr:目的地址结构
addrlen:sizeof(sockaddr)
Listen
int listen(int sockfd, int backlog);
开发文档:
sockfd:套接字描述符
backlog:很多人理解成最大连接数,其实不是。这个表示等待队列的最大值。
Accept
int accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen);
开发文档:这里的结构和connect类似,不过此时addr填充为连接来源的地址结构。
Send
Sendto
Recv
Recvfrom
Setsockopt
这个函数一般用来端口重用的,一个端口连接断了之后直接就可以再用,不用再一直等待。