MATLAB Answers

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

12 views (last 30 days)
p fontaine
p fontaine on 31 Aug 2017
Commented: p fontaine on 7 Sep 2017
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 ?

Answers (1)

Amit Doshi
Amit Doshi on 6 Sep 2017
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 Comment
p fontaine
p fontaine on 7 Sep 2017
My question was about a statically linked library (.lib) and not a dynamically linked library (.dll) ...

Sign in to comment.



Community Treasure Hunt

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

Start Hunting!