最近在开发中遇到了http请求刷新的问题,每次第3次刷新的时候就会“卡死”,过很久才会返回数据,原因是
HttpSendRequest卡死主要是因为阻塞了,因为该函数默认只能同时打开2个socket链接,如果你连续请求3次,
那么就有可能会阻塞,是因为服务器端没有释放第一次的链接,
导致第3次请求会等待第一次链接的释放,因此就会卡死。
两种解决方法:
第一种是在服务器端返回第2次请求的数据时就把第1次的socket链接给释放掉即可。
第二种是修改注册表,因为默认是2,我们可以将其改大,注册表位置在
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
键名为
MaxConnectionsPerServer REG_DWORD (Default 2)
将MaxConnectionPerServer改大即可
参考链接: