Issue to remove generated mex file after Simulink Model execution in parfor

3 visualizaciones (últimos 30 días)
I want to run a Simulink model inside a parfor loop.
Since the model involves code generation, each parallel iteration runs in a different temporary directory, as suggested in the related documentation. This is to avoid data concurrency issues.
In particular, after the execution of the model using the sim command, one wants to remove the temporary directory with its content, in order to avoid accumulating useless temp data.
However, when running rmdir(tmpdir,'s') I get the error
"C:\path\myModel_sfun.mexw64 could not be removed".
I tried adding the commands
munlock myModel_sfun.mexw64
fclose('all')
close_system(mymodel,0)
But this doesn't help. Any help? Thanks Luca

Respuesta aceptada

Friedrich
Friedrich el 19 de Jul. de 2013
Hi,
try a
clear mex
before removing the directory.
  1 comentario
Luca Barbiero
Luca Barbiero el 19 de Jul. de 2013
Thanks Friedrich, it works. Only,the keyword clear is underlined in red in the editor, and the reason is
"The function CLEAR might make an invalid workspace access inside PARFOR loop".
But apparently in this case it's ok. Luca

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Startup and Shutdown en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by