From a3d98eaa23bcbdd75e872b13795a414f6995e2ef Mon Sep 17 00:00:00 2001 From: duanshengchao <519970194@qq.com> Date: Mon, 9 Feb 2026 20:16:39 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=E8=B0=83=E6=95=B4=E9=87=8F=E6=B5=8B?= =?UTF-8?q?=E5=8E=86=E5=8F=B2=E6=95=B0=E6=8D=AE=E5=92=8C=E5=AE=9E=E6=97=B6?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E7=9A=84=E5=90=88=E5=B9=B6=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/measurementDataManager.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/source/measurementDataManager.cpp b/source/measurementDataManager.cpp index 750f74c..188fa7b 100644 --- a/source/measurementDataManager.cpp +++ b/source/measurementDataManager.cpp @@ -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 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)); } } }