| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1316 人关注过本帖
标题:CInternetSession多线程问题
只看楼主 加入收藏
bcyaya
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2008-10-26
收藏
 问题点数:0 回复次数:0 
CInternetSession多线程问题
CInternetSession    多线程  
开4个以上的线程就报错,4个以下就正常,好像MS的也有说明,不知道为什么?
有其他的代替方法了吗
  

CString  StrURL=" http://qq. ";    //被下载的地址
CString  StrMsg= " ";

CInternetFile*  MyFile  =  NULL;
        CInternetSession*  MySession=new  CInternetSession( "xxxxx ",NULL);
int  isUTF8=0;
  int  isConvert=0;
/*  
网络连接请求时间超时值在数毫秒级。如果连接请求时间超过这个超时值,请求将被取消。  
缺省的超时值是无限的。  
*/  
MySession-> SetOption(INTERNET_OPTION_CONNECT_TIMEOUT,6000);
MySession-> SetOption(INTERNET_OPTION_SEND_TIMEOUT,60000);
MySession-> SetOption(INTERNET_OPTION_RECEIVE_TIMEOUT,60000);
/*  在重试连接之间的等待的延时值在毫秒级。*/  
MySession-> SetOption(INTERNET_OPTION_CONNECT_BACKOFF,500);  
/*  在网络连接请求时的重试次数。如果一个连接企图在指定的重试次数后仍失败,则请求被取消。  缺省值为5。*/  
MySession-> SetOption(INTERNET_OPTION_CONNECT_RETRIES,  2);
try
{
    MyFile=(CInternetFile*)MySession-> OpenURL(StrURL);  //关键
}
catch(CException  *ex)  
{  
    MyFile  =  NULL;
  //  pEx-> Delete();
}
try
{
if  (MyFile)
{
  
if(MyFile-> GetLength() <2)  return  " ";
//如果文件大于1024KB就返回
CString      Filesize;      
if(  ((CHttpFile  *)MyFile)-> QueryInfo(HTTP_QUERY_CONTENT_LENGTH,Filesize))
{
int  iTotolPos=atoi(Filesize);      
if(iTotolPos> 1048576)
{
return  " ";
}
}
else
{
return  " ";
}
//返回状态
    DWORD      dwStatusCode;  
if(  ((CHttpFile  *)MyFile)-> QueryInfoStatusCode(dwStatusCode))
{  
if(dwStatusCode==400)
{
//AfxMessageBox( "400 ");
return  " ";
}
}
else
{
return  " ";
}
  

CString  StrLine;
long  Num_Line=1;
while  (MyFile-> ReadString(StrLine)!=NULL)
{

      if(Num_Line  %  300)  Sleep(1);
      StrMsg  +=  StrLine  +  "\r\n ";  //换行处理
      Num_Line=Num_Line+1;
}
}

else
{
return  " ";
}

  
  
}
  catch(CException  *ex)  
{  
}
        MyFile-> Close();
        delete  MyFile;
  
return  StrMsg;
搜索更多相关主题的帖子: 线程 
2008-10-26 19:15
快速回复:CInternetSession多线程问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.049834 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved