1.超时,HTTP超时
CInternetSession sess(NULL,1,INTERNET_OPEN_TYPE_PROXY,pstrProxyName,NULL,0);
设置了sess.SetOption (INTERNET_OPTION_CONNECT_TIMEOUT,1000* 20);
其中一次打开下面http花费了10min
pF=(CHttpFile*)sess.OpenURL("http://www.yahoo.com",1,INTERNET_FLAG_TRANSFER_ASCII|INTERNET_FLAG_RELOAD|INTERNET_FLAG_DONT_CACHE);2似乎超过5个线程调用上述代码,CInternetSession就阻塞了,至到有线程释放了CInternetSession。
搞不清楚WinInet运行机制,打算用socket直接写,不知道大家用WinInet多么?
CInternetSession sess(NULL,1,INTERNET_OPEN_TYPE_PROXY,pstrProxyName,NULL,0);
设置了sess.SetOption (INTERNET_OPTION_CONNECT_TIMEOUT,1000* 20);
其中一次打开下面http花费了10min
pF=(CHttpFile*)sess.OpenURL("http://www.yahoo.com",1,INTERNET_FLAG_TRANSFER_ASCII|INTERNET_FLAG_RELOAD|INTERNET_FLAG_DONT_CACHE);2似乎超过5个线程调用上述代码,CInternetSession就阻塞了,至到有线程释放了CInternetSession。
搞不清楚WinInet运行机制,打算用socket直接写,不知道大家用WinInet多么?
解决方案 »
- AfxMessageBox 的用法?
- VC++ oracle存储过程调用
- 请指教:查询分析器左侧的"对象浏览器"窗口,是哪种类型的窗口呀?好象不是mdi子窗口,因为它的大小不会随右侧窗口的变化而变化
- 为何在对话框中加入webbrowser高级控件后 对话框无法显示
- 我想用多线程同时执行一条语句十次,比如:Function();该怎么做呢?希望能给出源代码啊!谢谢了!
- 一个菜鸟问题?
- 请问如何用程序读出邮件的内容。
- 求救!!!动态库里显示对话框不能显示出来 QQ:529026
- 散分
- 如何保证主线程在子线程结束之后才结束
- ON_CONTROL_RANGE(...)的第一个参数是什么意思?举个例子,谢谢
- VC里面如何调用执行SQL的脚本呢??《我不要在SQLPLUS执行!》
sess.SetOption (INTERNET_OPTION_CONNECT_TIMEOUT,1000* 20);
sess.SetOption (INTERNET_OPTION_DATA_RECEIVE_TIMEOUT,1000 * 30);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~这个是接受数据的超时吧?但是,在测试钟出现了接受一个网页花了5分钟,远超过了设置的超时时间30S
2、(WinInet 限制了到每个服务器的连接数:
WinInet会限制同时连接到单个HTTP1.0服务器(的请求数)为4个。到单个HTTP1.1服务器的
连接,被限制为同时2个。HTTP1.1协议要求两个连接的限制,而对于HTTP1.0的4个连接则是
自我约束的,这种约束成为许多流行的Web浏览器的标准。 对于你的应用程序来说,这种限制的唯一证明是:调用HttpSendRequest和InternetOpenUrl
函数时,显现出较长的操作完成时间,这是因为他们的请求发出之前,在等待前一个连接的释放
)