可否改用dcomconnection或socketconnection(200分)

  • 主题发起人 主题发起人 xiao_mei
  • 开始时间 开始时间
X

xiao_mei

Unregistered / Unconfirmed
GUEST, unregistred user!
我编写了一个tcp/ip的客户端程序,使用的控件是clientsocket,采用nonblcoking
,可以正常连接服务端并发送信息。我的程序是24小时不停的运行。现在存在着以下的
问题:
1。clientsocket与服务器断开连接后(用ping是可以ping通的),没有触发disconnect
事件。也就是说当断开连接后没有响应任何事件。
2。当与服务器断开连接后,重新连接(经过很多次)出现10055(没有有效的内存)错误。
这个错误是由于我不断地连接服务器而导致内存耗尽。我尝试在每次重新连接之前都
执行 clientsocket.close;
sleep(60000);//一分钟;
client.open;//
sleep(500);//
结果一样出现10055错误。
请问一下各位大虾有没有以上问题的解决方法。
我想问一下可以用Dcomconnection和Socketconnection和服务器连接通信吗?
我听说Dcomconnection很稳定,而且也是建立在winsocket的基础上。
谢谢各位!
 
Dcomconnection、Socketconnection两种通信方式都行DCOM性能较稳定但配置复杂。
 
to dana
服务器端的程序不是我编写的,我只负责客户端的,而且我只知道他走tcp/ip协议。
这样子也可以用Dcomconnection吗?Dcomconnection不是只能用dcom协议吗?
 
请各位高手帮帮忙!
 
我将控件clientsocket的clietntype属性改为ctblocking,每次发送信息时都重新打开
socket和关闭socket,这样出现10055的错误。
但我觉得用ctblocking的效率不高,想用thread的形式编写,由于小女子没有编写过
thread的程序,请教一下编写线程的格式和注意问题。谢谢!!
 
如同我的问题,线程不是问题,你可以认为是在同一个boolean值下不同的两个过程同时
进行,问题是哪两个过程能够同时进行?还有一个带宽问题,64K的专线光一个连接就要
10..20秒,一个2M的专线可以只要一秒,希望我们能解决10..20秒的问题.
 
多人接受答案了。
 
后退
顶部