!118 fix: high CPU usage because futex is still waiting for queue after illegal exit

* fix
* Merge remote-tracking branch 'upstream/dev' into dev
* fix: high CPU usage because futex is still waiting for queue after illegal exit
* Merge remote-tracking branch 'upstream/master' into dev
* Merge remote-tracking branch 'upstream/dev' into dev
* feat: enable GPU
* !113 3.2.1 merge
* !112 Now stop use mail to collect info
* Merge remote-tracking branch 'upstream/dev' into dev
* Merge branch 'dev' of gitee.com:uniartisan2018/spark-store into dev
* feat: 清除网页缓存
* 文案修改
* update src/widget.ui.
* feat: 星火应用商店检测更新
This commit is contained in:
Pluto 2022-09-27 01:34:18 +00:00 committed by shenmo
parent beaeac60a3
commit 8902c81b9e
2 changed files with 22 additions and 20 deletions

View File

@ -18,6 +18,7 @@
#include <QSettings> #include <QSettings>
#include <QGraphicsOpacityEffect> #include <QGraphicsOpacityEffect>
#include <QtConcurrent> // 并发 #include <QtConcurrent> // 并发
#include <QCloseEvent> // close event
#include <DApplication> #include <DApplication>
#include <DGuiApplicationHelper> #include <DGuiApplicationHelper>
@ -572,14 +573,14 @@ void Widget::chooseLeftMenu(int index)
updateUI(); updateUI();
if(index <= 12) if (index <= 12)
{ {
if(themeIsDark) if (themeIsDark)
{ {
QString darkurl = menuUrl[index].toString(); QString darkurl = menuUrl[index].toString();
QStringList list = darkurl.split("/"); QStringList list = darkurl.split("/");
darkurl.clear(); darkurl.clear();
for(int i = 0; i < list.size() - 1; i++) for (int i = 0; i < list.size() - 1; i++)
{ {
darkurl += list[i] + "/"; darkurl += list[i] + "/";
} }
@ -687,22 +688,18 @@ void Widget::searchApp(QString text)
} }
else else
{ {
// sendNotification(tr("Spark store could only process spk:// links for now. The search feature is coming soon!"));
// ui->webView->setUrl(QUrl("http://www.baidu.com/s?wd="+text)); // 这东西对接百度
// ui->stackedWidget->setCurrentIndex(0);
// 禁止同时进行多次搜索 // 禁止同时进行多次搜索
if(!mutex.tryLock()) if (!mutex.tryLock())
{ {
return; return;
} }
// 关键字搜索处理 // 关键字搜索处理
httpClient->get("https://search.deepinos.org.cn/appinfo/search") httpClient->get("https://search.deepinos.org.cn/appinfo/search")
.header("content-type", "application/json") .header("content-type", "application/json")
.queryParam("keyword", text) .queryParam("keyword", text)
.onResponse([this](QByteArray result) .onResponse([this](QByteArray result)
{ {
auto json = QJsonDocument::fromJson(result).array(); auto json = QJsonDocument::fromJson(result).array();
if (json.empty()) if (json.empty())
{ {
@ -711,20 +708,24 @@ void Widget::searchApp(QString text)
mutex.unlock(); mutex.unlock();
return; return;
} }
displaySearchApp(json); displaySearchApp(json); })
}) .onError([this](QString errorStr)
.onError([this](QString errorStr) {
{
qDebug() << "请求出错:" << errorStr; qDebug() << "请求出错:" << errorStr;
sendNotification(QString(tr("Request Error: %1")).arg(errorStr)); sendNotification(QString(tr("Request Error: %1")).arg(errorStr));
mutex.unlock(); mutex.unlock();
return; return; })
}) .timeout(10 * 1000)
.timeout(10 * 1000) .exec();
.exec();
} }
} }
void Widget::closeEvent(QCloseEvent *event)
{
mutex.unlock();
httpClient->deleteLater();
}
/** /**
* @brief APP信息 * @brief APP信息
*/ */

View File

@ -128,6 +128,7 @@ private:
void setfoot(int); void setfoot(int);
void updatefoot(); void updatefoot();
void updateUI(); void updateUI();
void closeEvent(QCloseEvent *event);
quint64 dirFileSize(const QString &path); quint64 dirFileSize(const QString &path);