This commit is contained in:
2025-10-20 22:28:37 +08:00
parent eeb5af98eb
commit 7d148d79c9
429 changed files with 13624 additions and 586480 deletions

View File

@@ -13,6 +13,7 @@
#include <QScreen>
#include <GlobalDefinitions/Configure.h>
#include <GlobalDefinitions/Variable.h>
#include <Threads/MultiCoreManager.h>
QtMessageHandler gDefaultHandler = NULL; // 程序集变量,用于保存默认的消息处理函数
#if CONFIG_EN_LOG
/**
@@ -100,13 +101,16 @@ void myMessageOutput(QtMsgType type, const QMessageLogContext &context, const QS
}
#endif
int main(int argc, char *argv[])
{
int main(int argc, char *argv[]){
#if CONFIG_EN_DPI //开启高DPI
QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
#endif
// 设置Qt全局线程池使所有核心都能参与处理
QThreadPool::globalInstance()->setMaxThreadCount(QThread::idealThreadCount());
QThreadPool::globalInstance()->setExpiryTimeout(-1); // 线程永不过期
QApplication a(argc, argv); // 创建一个QApplication对象它是所有GUI程序的起点
// 打印 Qt 自带调试信息
//QLoggingCategory::setFilterRules("*.debug=true");
@@ -128,6 +132,19 @@ int main(int argc, char *argv[])
#if CONFIG_EN_DISPLAY_INFO // 获取默认屏幕
DisplayInfo = QGuiApplication::primaryScreen()->geometry();
#endif
// 优化QApplication的多线程处理能力
QApplication::setOrganizationName("EJM_Display");
QApplication::setApplicationName("EJM_JueMao_Sync");
// 初始化全局多核心管理器
//MultiCoreManager* coreManager = MultiCoreManager::instance();
// 打印CPU核心信息
int cpuCount = QThread::idealThreadCount();
qDebug() << "系统CPU核心数量: " << cpuCount;
qDebug() << "Qt全局线程池最大线程数: " << QThreadPool::globalInstance()->maxThreadCount();
qDebug() << "全局多核心管理器已初始化";
QTranslator translator;
@@ -147,5 +164,11 @@ int main(int argc, char *argv[])
LaunchPage w;
w.show();
return a.exec();
// 程序退出前清理多核心管理器
int result = a.exec();
// 等待所有后台任务完成
//coreManager->waitForDone(1000);
return result;
}