Clear persistent variables of function on worker

1 次查看(过去 30 天)
I need to clear the persistent variables of a function on all workers after having called it from a parallelized statement.
parfor n = 1 : N
persistentFunction()
end
spmd
clear persistentFunction
end
The above will not work because clear cannot be called from an spmd statement.
How can I clear persistentFunction ?

采纳的回答

Walter Roberson
Walter Roberson 2023-5-6
parfevalOnAll(@() clear('persistentFunction'), 0)

更多回答(1 个)

Edric Ellis
Edric Ellis 2023-5-9
Whenever you issue a clear command at the client, the same clear command is issued on the workers. So you can simply do
clear persistentFunction

类别

Help CenterFile Exchange 中查找有关 MATLAB Parallel Server 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by