Qt设置阻塞式⽹络请求,和超时处理
QNetworkProxyproxy;
e(QNetworkProxy::Socks5Proxy);
tName(LOCAPROXYIP);
t(LOCAPROXYPORT);
r(PROXYUSERNAME);
sword(PROXYPWD);
QTimertimer;
erval(CHECKPROXYNETWORKTIMES);
gleShot(true);
QNetworkAccessManagermanager;
xy(proxy);
QNetworkRequestrequest;
(QUrl(CHECKREMOTEURL));
QNetworkReply*pReply=(request);
QEventLooploop;
QObject::connect(&timer,&QTimer::timeout,&loop,&QEventLoop::quit);
QObject::connect(pReply,&QNetworkReply::finished,&loop,&QEventLoop::quit);
();
();
if(ve()){
();
if(pReply->error()!=QNetworkReply::NoError){//访问异常
//CLIENT_APP->commMessageBoxInt(CLIENT_APP->_listPollIndex);
CLIENT_APP->startShadowProxyApp();
Sleep(CHECKTHREADTIMES);
}
el
{
//CLIENT_APP->commMessageBoxInt(CLIENT_APP->_listPollIndex);
Sleep(CHECKPROXYNETWORKSUCCTIMES);//成功了设置延迟
}
}
el{//超时
//CLIENT_APP->commMessageBoxInt(CLIENT_APP->_listPollIndex);
QObject::disconnect(pReply,&QNetworkReply::finished,&loop,&QEventLoop::quit);
pReply->abort();
pReply->deleteLater();
CLIENT_APP->startShadowProxyApp();
Sleep(CHECKTHREADTIMES);
}
本文发布于:2023-03-10 05:32:48,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/1678397569201149.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:网络超时.doc
本文 PDF 下载地址:网络超时.pdf
留言与评论(共有 0 条评论) |