Clear function inside a parfor loop: Transparency violation error

Dear community,
I tried to find some answers about the topic in this title, but I found only the problem concerns to set the variable as empty.
I don't clear a variable but a function, as shown in the example below. This produce a transparency violation error. Could someone help me? I need to clear the function in every loops.
Kind regard
Califfo
parfor i=1:N1
for j = 1:N2
clear myfunction
[outputs] = myfunction(inputs);
end
end

 Respuesta aceptada

What is the purpose of clearing the function? Do you want to get rid of persistently stored variables? This could be done more efficiently, e.g. by:
function outputs = myfunction(inputs)
persistent a,b
if nargin == 0
a = [];
b = [];
return;
end
end
Now call myfunction() instead of clearing it. This avoid a time-consuming reloading of the function from the disk and the reparsing.

Categorías

Más información sobre Loops and Conditional Statements en Centro de ayuda y File Exchange.

Productos

Versión

R2020b

Preguntada:

el 24 de Dic. de 2020

Comentada:

el 28 de Dic. de 2020

Community Treasure Hunt

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

Start Hunting!

Translated by