问题 : 为什么当用户一段时间(只是几分钟)不进行sql方面的操作,
我的SocketConnection就会断开,造成假死机状态,需要重新连接才能正常使用
(调试状态下报错为"远程主机强迫关掉一个连接",
另外这种报错抛出的异常是什么?),
如果用户一直在进行SQL方面操作则不会出现这样的问题.另外,SocketConnection断开时好像用户的连接对象并没有释放掉
(我中间层用的是自己写的DLL,在组件中注册后能监控到连接的用户对象数量),怎么才能在程序中释放掉啊,我曾在异常处理中试图去释放掉都没有成功,请大侠们指教!
另外,我只是在scktsrvr.exe中修改了连接的用户数,
没有去修改连接的时间,仍为0.
请高手们帮帮忙啊,项目马上就要上了,说说抛出的具体异常也行.

解决方案 »

  1.   

    怎么没有人来啊!
    另外补充一点,我是通过公司的外网走的,在防火墙开了一个端口,速度上也不尽人意.
    尤其是SocketConnection经常断开,需要我重新连接更是使速度难以忍受.
    SOS!!!
      

  2.   

    http://community.csdn.net/Expert/topic/2888/2888279.xml?temp=.6516535
      

  3.   


    应该是TSocketConnection的连接超时问题:http://community.csdn.net/Expert/topic/2888/2888279.xml?temp=.6516535
      

  4.   

    to all
    与防火墙有关?如果正常进行查询就不会有问题啊!
    TSocketConnection的连接超时在哪里设置啊,我没有修改0 ,说明是无限时啊
    还有其他地方设置吗?
      

  5.   

    你是用socket的吧?
    你设定一下timeout的时间为0。
    是这个东西把你的连接关了