程序是一个服务器代理程序,一共起64个线程,供tcp客户端连接,
程序会定时的去ping客户端,如果ping 5次超时,就会主动断开与客户端的连接。现在问题是这样的:
一台服务器上会有5个以上这样的代理程序,现在的问题是程序运行一段时间后(时间不确定,有时一周,有时几周)会自动退出,退出之前ping客户端会超时,并且断开与客户端的连接。而且奇怪的是,一台服务器有5个这样的代理程序,总是那一个会出现自动退出问题。请问大家,造成这种情况,一般是什么原因?服务器是: 2003Server

解决方案 »

  1.   

    是的,5个程序是不同的进程出问题的程序上面连着20个客户端,程序运行过程中有打印日志,退出之前的异常就是ping客户端ping超时5次,其他的代理程序正常,服务器的网络应该没有问题。内存越界?  接受ping响应包异常造成内存越界 -----》 程序退出?
      

  2.   

    估计不是因为接受ping响应包异常造成内存越界
    看看是不是主动与客户端断开那块出了问题。
    从你的描述看,只有ping5次超时后才会发生自动退出现象,
    那问题可能就出在ping5次超时后做处理的那段代码上
      

  3.   

    做一下异常处理,很可能是出现异常了。楼主在接受响应包的时候,可否进行一下try catch操作
      

  4.   

    通过ping来判断客户端是否连接,真是很有创意啊,哈哈