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

14 views (last 30 days)
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.

Categories

Find more on Simulink Environment Customization in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

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

Start Hunting!