How to unload a library linked to a S-Function ?

10 次查看(过去 30 天)
I have built a S-Function with S-Function builder (R2015a 32 bits on windows, compiler Visual Studio C++ Pro 10) This S-Function is linked with a static library (.lib) of legacy code which opens a file during execution. Eventhough I type on the command line clear mex clear *.mewx32 clear *.lib the file opened by this library seems to remain linked to the Matlab Runtime
My problem is indeed that this library does not close properly a file, then 2 consecutive simulation runs under simulink produce a crash because the file remains open. The only workaround I have found is to restart Matlab. Is there a better solution ?

回答(1 个)

Amit Doshi
Amit Doshi 2017-9-6
You can use the 'unloadlibrary' function in MATLAB to unload shared library from memory.
Refer the below link to know more about the 'unloadlibrary' function in MATLAB:
  1 个评论
p fontaine
p fontaine 2017-9-7
My question was about a statically linked library (.lib) and not a dynamically linked library (.dll) ...

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Simulink Functions 的更多信息

标签

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by