refactor:调整量测历史数据和实时数据的合并逻辑

This commit is contained in:
duanshengchao 2026-02-09 20:16:39 +08:00
parent e81a701414
commit a3d98eaa23
1 changed files with 4 additions and 1 deletions

View File

@ -21,7 +21,7 @@ MeasurementDataManager* MeasurementDataManager::instance()
// static MeasurementDataManager instance;
// return &instance;
//不采用静态局部变量的方式实现因为QTimer析构时需要依赖事件循环静态局部变量的释放实在main函数之后此时事件循环已退出(app.exec())
//不采用静态局部变量的方式实现因为QTimer(WebSocketClient中)析构时需要依赖事件循环静态局部变量的释放实在main函数之后此时事件循环已退出(app.exec())
//所以增加destroyInstance()在main函数退出之前显示调用即可规避此问题
if(!m_instance)
m_instance = new MeasurementDataManager();
@ -294,6 +294,8 @@ void MeasurementDataManager::processHistoricalResponse(const QString& dataID, co
{
QJsonArray valueArray = values.toArray();
int size = valueArray.size();
QVector<MeasurementDataPoint> points;
points.reserve(size);
for(int i = 0; i < size; ++i)
{
if(!valueArray.at(i).isObject())
@ -302,6 +304,7 @@ void MeasurementDataManager::processHistoricalResponse(const QString& dataID, co
QJsonObject valueObj = valueArray.at(i).toObject();
qint64 timeStamp = valueObj.value("time").toString().toLongLong();
double value = dataObj.value("value").toDouble();
points.append(MeasurementDataPoint(timeStamp, value));
}
}
}