多线程下载网页 ( 积分: 100 )

  • 主题发起人 主题发起人 mohu
  • 开始时间 开始时间
M

mohu

Unregistered / Unconfirmed
GUEST, unregistred user!
用过HttpCli、NMHTTP、IdHTTP进行网页的下载,但感觉速度不够快。而且很占资源。
当我同时下载五、六十个网页的时候,CPU占用率高达100%。居高不下。
哪位有可以高速多线程下载网页的源代码(最好用最底层下载函数,以便达到最高的执行效率,我曾用过ClientSocket来下载,但我还是做不出所要的效果)。希望能够1至2秒钟下载一次网页。
哪位高手有源码,望赐教。若是能够解决要求,除送分外,还可以支付一定的现金以作感谢。(初效果而定)
 
用过HttpCli、NMHTTP、IdHTTP进行网页的下载,但感觉速度不够快。而且很占资源。
当我同时下载五、六十个网页的时候,CPU占用率高达100%。居高不下。
哪位有可以高速多线程下载网页的源代码(最好用最底层下载函数,以便达到最高的执行效率,我曾用过ClientSocket来下载,但我还是做不出所要的效果)。希望能够1至2秒钟下载一次网页。
哪位高手有源码,望赐教。若是能够解决要求,除送分外,还可以支付一定的现金以作感谢。(初效果而定)
 
呵呵, 这个没什么问题。
留下联系方式,详谈!
 
原来你跑这里来了,刚才qq群里高手出现了,
兄弟,我也没你那环境,看看下面的代码吧
procedure TMyThread.Execute;
var
Stream: TWinSocketStream;
B: Array[0..1023] of Char;
S: String;
begin
Stream := TWinSocketStream.Create(FClientSocket.Socket, 10);//FclientSocket已正确连接和设置
while (not Terminated) and (FClientSocket.Active) do
begin
if Stream.WaitForData(100) then
begin
//写数据到服务器
stream.write(S, Length(S)); //假定S中已有了要发送的数据
//从服务器读数据
FillChar(B, 1024, 0);
stream.Read(B, 1024);
end;
end;
end;
 
兄弟,我是天蓝,家里没上网条件,只有睡觉。
 
哎,天蓝兄,这个问题我还在痛苦中呢....
 
忧忧.我的联系方式:QQ:397057410
 
后退
顶部