理解mclmcrrt
代理层
生成的所有应用程序和软件组件MATLAB®编译器™而且MATLAB编译SDK™只需要链接到一个MATLAB库,mclmcrrt
.这个库为MATLAB库中用于矩阵运算、mat文件访问、实用程序和内存管理以及应用程序的所有公共函数提供了一个代理APIMATLAB运行时.的mclmcrrt
库位于已部署的MATLAB代码和这些其他版本依赖的库之间,提供以下功能:
的多个版本MATLAB运行时可以共存
提供一层间接性
确保应用程序是线程安全的
动态加载依赖的(重新导出的)库
之间的关系mclmcrrt
和其他MATLAB库如图所示。
MCLMCRRT代理层
在图中,实箭头表示静态链接,虚线箭头表示动态链接。该图说明了如何mclmcrrt
库层位于mclmcr
而且mcr
库。的mclmcr
库包含部署的MATLAB代码的运行时功能。的mcr
模块确保每个部署的MATLAB代码包在运行时都在自己的上下文中运行。的mclmcrrt
代理层,除了加载mclmcr
,也动态加载MX
而且垫
模块,主要用于mxArray
操纵。有关更多信息,请参阅MathWorks®金宝app支持数据库并搜索有关的信息MSVC
共享库。
谨慎
已部署的应用程序必须仅链接到mclmcrrt
代理层库(mclmcrrt.lib
在Windows上®,mclmcrrt.so
在Linux上®,mclmcrrt.dylib
在麦金塔电脑).不要链接到图中显示的其他库,例如mclmcr
,libmx
等等。