我现在做一个winform的SOCKET的监听程序,有多个客户端向服务器发送数据请求。
    
    实际情况是这样的:    客户端发送用户名过来,服务器需要即时从数据库中查询出客户的详细地址,并且将用户地址即时反馈给该客户端。    难点是,如果有100个客户端同时发送请求过来,服务器如何正确的将每一个客户端请求的数据都正确反馈回去,而不会出现把本该返回给客户端A的数据,发送给了客户端B。所以程序对并发有一定要求。    我在网上搜索了一些资料,但都是做聊天程序的,而且是需要在服务器端手动点击“发送”按钮,才能将信息发送给最后一个连接到服务器的客户端。    求一演示程序,请各位前辈赐教!

解决方案 »

  1.   

    这个不难,看看socket编程,有同步模式也有步模式,随便你怎么选择了
    我最近写了一个通讯模块的例子,同时连接了200个客户端,由于没有什么测试数据,就是客户端发什么,服务端收到后再发回给客户端;
      

  2.   

    100个客户端,你服务器程序肯定要保持100个SOCKET连接三,那个传的就那个返回嘛
      

  3.   

    楼上正解,用异步,主线程侦听,当有接连的时候,会自动创建一个socket对象,这个对象接收到数据后,进行相应的处理,就不会有错了。你别说100个客户端了,在我们的平台上,同时会有几万个客户端,每30秒都会向中心发数据的。
      

  4.   

    每个socket连接都会知道是哪里来的。就像每封信都有邮寄地址似的,“按地址回信”!
      

  5.   

    参考.
    http://blog.csdn.net/zgke/archive/2009/01/20/3838844.aspx