Мне интересно, как я могу легко получить доступ к глобальной переменной при вызове функции в цикле parfor? Например, пример кода выглядит следующим образом:
global a
a = 132.1;
A = [0, 0, 0];
for i=1:3
A(i) = test(i);
end
И тестовая функция
function f = test(v)
global a
f = a+v;
Код должен быть правильным в этом формате, однако, если я поменяю на parfor, возникнет проблема. Я думаю, что основная проблема заключается в глобальной переменной a. Итак, как я могу изменить код? Хотя в этом примере модификация простая и парфор не нужен, но мой реальный код действительно сложен, проблема сводится к тому же.
a
вашей функции? В частности, еслиa
не меняется, это действительно лучший выбор. Если он изменяется, вам следует вообще пересмотреть использованиеparfor
. - person Suever   schedule 05.08.2016