谢了大飞哥!
小小分值不成敬意!
请笑纳!

解决方案 »

  1.   

    呵呵,你在QQ上的留言我看到了。我都回复你了,再给你COPY一次哈哈哈,大飞哥,我做完了,这没环境,单机试一下还行,就是不知道多机行不行! 
    飘落的烟灰 14:57:31
    我想问问clientList[i].ClientName
    不好用啊,是这样取吗?
    我这怎么不行呢? 
    飘落的烟灰 11:43:20
    大飞哥,有一个难题我想了很久也解决不了,就是当客户端异常退出时我的服务器端该用什么方法判断,断开与该用户的连接! 
    飘落的烟灰 16:40:47
    大飞,在吗? 
    飘落的烟灰 18:17:44
    我留了贴子
    http://community.csdn.net/Expert/topic/4177/4177268.xml?temp=6.472415E-02
    你回一下我结帐!
    只能分两次给了!呵呵! 
    dff 12:22:47
    不是 clientList[i].ClientName 这样用的 
    飘落的烟灰 12:23:59
    您好,我现在有事不在,一会儿再和您联系 
    dff 12:23:12
    ((Client)clientList[i]).ClientName 这样才对 
    飘落的烟灰 12:24:18
    您好,我现在有事不在,一会儿再和您联系 
    dff 12:24:09
    大飞哥,有一个难题我想了很久也解决不了,就是当客户端异常退出时我的服务器端该用什么方法判断,断开与该用户的连接!这个我暂时还没有做到那步,不过用Exception类应该很容易的,客户端断了,服务器端会有一个异常的,捕捉就可以了
      

  2.   

    还有一个问题,是我最近做的时候发现的。(我们上次讨论的方法和思路一直就属于同步通讯)
    不知道你有没有试过,如果socket是阻塞的话,再连接多个客户端的时候,可能会丢包的。
    (调试多个客户端很容易的,你运行多此client点连接就可以了,可以看看互相通讯)
    我就是这样调的,慢慢来还好,要是一个接一个的连,可能发出去的包服务器会丢掉一些。而且这种几率比较大。
    我周末发现的,郁闷了好久。上面那个思路很好,不过,实际使用起来还是会有问题。
    我个人觉得,同步socket通讯,比较适合点对点的通讯,这样效率高。
    而一对多客户端的话,最好还是用异步通讯,否则会很头疼,因为你根本不知道服务器端在做哪一步的时候阻塞,后面发来的东西它都不理了。于是我又查了异步socket通讯的资料。
    你可以留一个email,我发给你一些。我先给你的 [email protected] 发一封。昨天调试好象同步也可以,所以这几天我也在研究。不过我觉得,还是异步方法比较靠得住些,而且不用自己写多线程,委托给系统自己去创建线程处理。