潘志宝
2 天以前 271fed395d4d3e4ab8cdb44ccf466859ba485e46
iailab-module-model/iailab-module-model-biz/src/main/resources/template/cpp.vm
@@ -17,7 +17,21 @@
   {
      PyGILThreadLock lock;
      PyObject* pModule = create_py_module("${pyModule}.${pyName}");
      jclass hashmapClass = env->FindClass("java/util/HashMap");
      jmethodID getMID = env->GetMethodID(hashmapClass, "get", "(Ljava/lang/Object;)Ljava/lang/Object;");
      jstring keyJString = env->NewStringUTF("pyFile");
      jobject javaValueObj = env->CallObjectMethod(settings, getMID, keyJString);
      jstring javaStringValue = (jstring)javaValueObj;
      const char* strValue = env->GetStringUTFChars(javaStringValue, NULL);
      //*************导入模型******************
      PyObject* pModule = create_py_module(strValue);
      // 释放java占用内存
      env->ReleaseStringUTFChars(javaStringValue, strValue);
      env->DeleteLocalRef(javaStringValue);
      env->DeleteLocalRef(javaValueObj);
      env->DeleteLocalRef(keyJString);
      env->DeleteLocalRef(hashmapClass);
      if (pModule == NULL)
      {
         cout << "model error" << endl;
@@ -80,33 +94,6 @@
         cout << "ConvertPydictToJhmap error" << endl;
         throw "函数返回值异常!";
      }
      delete pModule;
      pModule = nullptr;
      delete pModule;
      delete pFunc;
      pFunc = nullptr;
      delete pFunc;
#{foreach} ($column in [1..$entity.dataLength])
      delete[] data_${column};
      data_${column} = nullptr;
      delete data_${column};
#{end}
#{if}($entity.model==1)
      delete model_path;
      model_path = nullptr;
      delete model_path;
#{end}
      delete settings_1;
      settings_1 = nullptr;
      delete settings_1;
      delete[] pArg;
      pArg = nullptr;
      delete pArg;
      return result;
   }