文档

理解mclmcrrt代理层

生成的所有应用程序和软件组件MATLAB®编译器™MATLAB编译SDK™只需要链接一个MATLAB库,mclmcrrt。该库为MATLAB库中用于矩阵运算、mat文件访问、实用程序和内存管理以及应用程序的所有公共函数提供代理APIMATLAB运行时。的mclmcrrt库位于已部署的MATLAB代码和这些其他版本相关库之间,提供以下功能:

  • 的多个版本MATLAB运行时可以共存

  • 提供一个间接层

  • 确保应用程序是线程安全的

  • 动态加载依赖的(重新导出的)库

之间的关系mclmcrrt等MATLAB库,如下图所示。

MCLMCRRT代理层

在图中,实线箭头表示静态链接,虚线箭头表示动态链接。该图说明了如何mclmcrrt库层位于mclmcrmcr库。的mclmcr库包含部署的MATLAB代码的运行时功能。的mcr模块确保部署的每个MATLAB代码包在运行时在其自己的上下文中运行。的mclmcrrt代理层,除了加载mclmcr,也会动态加载MX模块,主要用于mxArray操纵。有关更多信息,请参阅MathWorks®金宝app支持数据库并搜索有关的信息MSVC共享库。

谨慎

已部署的应用程序必须只链接到mclmcrrt代理层库(mclmcrrt.lib在Windows上®mclmcrrt.so在Linux上®,mclmcrrt.dylib麦金塔电脑)。不要链接到图中显示的其他库,例如mclmcrlibmx等等。

这个话题有帮助吗?