主要内容

理解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麦金塔电脑).不要链接到图中显示的其他库,例如mclmcrlibmx等等。