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

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 ?

Antworten (1)

Amit Doshi
Amit Doshi am 6 Sep. 2017

1 Stimme

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 Kommentar

p fontaine
p fontaine am 7 Sep. 2017
My question was about a statically linked library (.lib) and not a dynamically linked library (.dll) ...

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Simulink Coder finden Sie in Hilfe-Center und File Exchange

Produkte

Tags

Gefragt:

am 31 Aug. 2017

Kommentiert:

am 7 Sep. 2017

Community Treasure Hunt

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

Start Hunting!

Translated by