清理 MATLAB 资源
清理客户端配置
在使用客户端配置创建客户端上下文之后,您可以随时清理客户端配置。上下文在创建时复制所需的配置值。
要清理客户端配置,请使用带有指向客户端配置数据的指针的 mpsClientRuntime
destroyConfig()
函数。
mpsClientRuntime* mpsruntime = mpsInitialize(); mpsClientConfig* config; mpsStatus status = mpsruntime->createConfig(&config); mpsClientContext* context; status = mpsruntime->createContext(&context, config); ... mpsruntime->destroyConfig(config);
清理客户端上下文
客户端上下文封装了客户端和服务器实例之间的连接框架。需要评估 MATLAB® 函数。上下文还执行许多任务来优化与服务器实例的连接。
在客户端完成对 MATLAB 函数的评估之前,不应清理客户端上下文。
使用带有指向客户端上下文数据的指针的 mpsClientRuntime
destroyContext()
函数清理客户端上下文。
mpsClientRuntime* mpsruntime = mpsInitialize(); mpsClientConfig* config; mpsStatus status = mpsruntime->createConfig(&config); mpsClientContext* context; status = mpsruntime->createContext(&context, config); ... mpsruntime->destroyContext(context);
清理客户端运行时
当您使用完客户端 API 后,请使用 mpsTerminate()
函数清理运行时资源。
注意
mpsTerminate()
不会清理客户端上下文或客户端配置。在调用 mpsTerminate()
之前必须清理它们。
清理 MATLAB 数组
存储在 mpsArray
变量中的 MATLAB 数组是不透明的。它们包含许多字段,用于在 C 客户端代码和 MATLAB Runtime 之间编组数据。包含 MATLAB 数组的变量可能很大。
使用 mpsDestroyArray()
函数清理包含 MATLAB 数组的变量。mpsDestroyArray()
函数接受指向正在清理的 MATLAB 数组的指针。它释放数组使用的所有内存。
注意
清理用作 feval()
调用的输入和输出的数组时,必须先清理数组中包含的所有 MATLAB 数组,然后再销毁指向输入或输出的 MATLAB 数组。
清理 feval()
调用中使用的数据。
const mpsArray** const inVal = new const mpsArray* [numIn]; ... mpsArray **outVal = new mpsArray* [numOut]; ... status = mpsruntime->feval(context,funUrl, numOut, outVal, numIn, inVal); if (status==MPS_OK) { ... for (int i=0; i<numOut; i++) mpsDestroyArray(outVal[i]); delete[] outVal; } for (int i=0; i<numIn; i++) mpsDestroyArray(inVal[i]); delete[] inVal;