FTP客户端,占用CUP100%解决方法,问题求助!!(100分)

  • 主题发起人 主题发起人 大懒虫!!
  • 开始时间 开始时间

大懒虫!!

Unregistered / Unconfirmed
GUEST, unregistred user!
如题,我做的FTP客户端,在数据库里提取记录,压缩,发送到服务器,主要是这几个功能。。
问题:运行后,界面无响应,CUP占用 100% ,其它软件无法再运行(可能是查找网络等操作,占用了CUP 因为远程的FTP服务器带宽不是很快)。
后来发现,程序中没有用IdAntiFreeze,,后来加上IdAntiFreeze后,又出现新问题。-----------> 运行一段时间后,出现错误提示 “Connection closed Gracefully”

请问这个错误是什么意思,怎么解决呢,在线等
 
怎么没人来啊,我自己顶一下
 
再顶一下
 
怎么没人来啊,是不是我说的不够明白啊,
 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=2731650
 
“Connection closed Gracefully”表示链接断开。所以建议楼主最好在进行ftp操作之前要检查Connection是否处于True状态。
 
你的代码是不是类似这样
FTP1.Connect;
try
//查询你的数据库
FTP1.put(...);
finally
FTP1.Disconect;
end;
是这样吗?如果你在"查询你的数据"这部分代码写了很占用CPU时间的操作的话,可能因为服务器长时间未接到你的程序发送的FTP请求,而自动踢你下线了,等你再在后面用FTP1.Put方法的时候,就会抛出Connection closed Gracefully异常了。正确的方法应该是


//查询你的数据,把结果保存起来
FTP1.Connect
try
FTP1.Put(...);
finally
FTP1.Disconect;
end;
 
后退
顶部