socket服务端多个进程是否必须得对应多个socket?

来源:百度知道 编辑:UC知道 时间:2024/06/06 22:48:42
问题是这样的!我要在服务端开个socket通信服务,而他对应的客户端会比较多(不止一台),我想实现服务端开多个线程,每个线程和一个客户端对应,那是否在每个线程里面都得creat 一个socket?为了能说明问题,我举例说明:
第一种情况:(只有一个socket)
socket()
bind()
listen()
while()
{
ret=accept()
if(ret 成功)
{
监听到一个链接就建一个线程和客户端通信
}
}

第二种:
建一线程,先获取所有请求链接的客户端,
然后对于每个链接都做要建一个socket
socket()
bind()
listen()
accept()

不知道你说的是啥意思,当client 连到server 时,在server 中会得到client 的socket 引用,这时只要把这个引用作为参数创建一个线程为这个client 服务就行,server 继续进行监听client 的连接请求。ok?