fix: app hang a few seconds when launch app for the first time#769
Conversation
修复启动器首次启动应用时,可能导致界面卡死几秒的问题. Log:
deepin pr auto review你好!我是CodeGeeX。我已经仔细审查了你提供的Git Diff。这次代码变更的主要意图是将 整体思路上,这种延迟加载和按需初始化是很好的优化,但在代码逻辑、内存管理和性能方面存在一些需要改进的隐患。以下是我的详细审查意见: 1. 逻辑问题 - 内存泄漏与悬空指针隐患问题代码: auto serviceWatcher = new QDBusServiceWatcher(...);
connect(serviceWatcher, &QDBusServiceWatcher::serviceRegistered, this, [this, serviceWatcher]() {
// ...
serviceWatcher->disconnect();
});分析: 改进建议: connect(serviceWatcher, &QDBusServiceWatcher::serviceRegistered, this, [this, serviceWatcher]() {
qCInfo(logDdeIntegration) << "AppManager1 service registered on bus, fetching app items";
fetchAppItems();
loadAppsLaunchedTimes();
serviceWatcher->deleteLater(); // 安全释放内存
});2. 性能与逻辑问题 -
|
| qCInfo(logDdeIntegration) << "AppManager1 service registered on bus, fetching app items"; | ||
| fetchAppItems(); | ||
| loadAppsLaunchedTimes(); | ||
| serviceWatcher->disconnect(); |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: 18202781743, BLumia The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
修复启动器首次启动应用时,可能导致界面卡死几秒的问题.