From c9e48bd2dff2b5766589024cf7264189b5f2a05c Mon Sep 17 00:00:00 2001 From: dengzedong <dengzedong@email> Date: 星期五, 03 一月 2025 14:03:33 +0800 Subject: [PATCH] cpp释放java占用内存 --- iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleConstructor.java | 18 ++++++++++++++++-- 1 files changed, 16 insertions(+), 2 deletions(-) diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleConstructor.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleConstructor.java index e42c921..b4a0756 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleConstructor.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleConstructor.java @@ -1,15 +1,18 @@ package com.iailab.module.model.mdk.sample; import com.iailab.module.model.mdk.common.exceptions.ModelInvokeException; +import com.iailab.module.model.mdk.sample.dto.ColumnItemPort; import com.iailab.module.model.mdk.sample.dto.SampleData; import com.iailab.module.model.mdk.sample.dto.SampleInfo; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; +import org.springframework.util.CollectionUtils; import java.text.MessageFormat; import java.util.Date; import java.util.List; +import java.util.Map; /** * 样本构造 @@ -25,11 +28,22 @@ @Autowired private SampleFactory sampleFactory; - public List<SampleData> constructSample(String typeA, String modelId, Date runTime,String itemName) throws ModelInvokeException { + public List<SampleData> constructSample(String typeA, String modelId, Date runTime,String itemName, Map<Integer, Integer> dynamicDataLength) throws ModelInvokeException { try { SampleInfoConstructor sampleInfoConstructor = sampleFactory.createSampleInfo(typeA, modelId); SampleInfo sampleInfo = sampleInfoConstructor.prepareSampleInfo(modelId, runTime); - SampleDataConstructor sampleDataConstructor = sampleFactory.createSampelData(typeA); + if (!CollectionUtils.isEmpty(dynamicDataLength) && sampleInfo.getColumnInfo() != null) { + for(ColumnItemPort columnInfo : sampleInfo.getColumnInfo()) { + if (!dynamicDataLength.containsKey(columnInfo.getPortOrder())) { + continue; + } + columnInfo.setDataLength(dynamicDataLength.get(columnInfo.getPortOrder())); + columnInfo.getColumnItemList().forEach(columnItem -> { + columnItem.setDataLength(columnInfo.getDataLength()); + }); + } + } + SampleDataConstructor sampleDataConstructor = sampleFactory.createSampleData(typeA); return sampleDataConstructor.prepareSampleData(sampleInfo); } catch (Exception e) { e.printStackTrace(); -- Gitblit v1.9.3