Linux Socket编程求助啊,一个服务器和多个客户端通信问题求助
做一个小项目,要求如下:在linux下,用一个线程 实现一个服务器和多个客户端的通信,客户端和服务器按照TPC MODBUS协议进行传输数据,客户端是用的MODSCAN软件;我用Linux socket接口把代码编写完成了,由于不能使用多个线程,因此我用了linux中Socket的 select 函数,FD_SET函数,FD_ISSET 函数;select函数判断是否有文件状态发生变化,FD_ISSET判断是哪个客户端来了数据,进而调用recv函数去接收,当recv函数返回值是0时,调用close函数将客户端关掉;
现在问题是:打开两个客户端软件可以分别进行各自的独立的通信,传输数据;但当关掉一个时,另一个的通信也中断了;很郁闷!!这是为什么啊?也就是客户端之间还有是互相影响,影响在关断的时候,当一个关断,会影响另一个的通信,这是为什么呢?
问题补充:我在线程A中跑的是服务器接收多个客户端连接请求并用recv处理数据,在另一个线程中用send 发送给相应的线程响应;