Qt -检查互联网连接和创建线程



我需要在我的Qt应用程序中创建一个后台任务…我想知道我是否能每隔5分钟上网。所以我搜索了QThread和QNetworkSession。现在我有:

QNetworkConfigurationManager mgr;
QNetworkConfiguration ap = mgr.defaultConfiguration();
QNetworkSession *session = new QNetworkSession(ap);
session->open();
qDebug() << "session: " << session->state();

如果状态为3,我认为我已连接到互联网…但我不确定。

我想知道的是,如果这段代码真的想要我需要,如果有更好的方法来做到这一点,如果使用QThread可以在后台运行它…如果可能的话,QThread是最好的方式,你能告诉我如何使用QThread吗?

如果您只需要定期做一些小事,那么使用QTimer比使用线程更直接。

但是,你看过QNetworkConfigurationManager::onlineStateChanged()吗?

最新更新