如何在MATLAB上从parfor中检索变量?

时间:2012-12-08 18:31:50

标签: matlab parallel-processing

我试图在MATLAB上检索我在parfor(并行)上执行的变量,但我不能。继承我的代码:

clear all
clc    
matlabpool open 4

parfor i = 1:4
    a = 2^i;
end

matlabpool close

我希望能够恢复在不同工作人员上执行的不同值。例如,我想访问值为2 ^ 1的a(1),值为2 ^ 2的a(2),依此类推。非常感谢你!

1 个答案:

答案 0 :(得分:5)

当您覆盖单个变量a时,您不能拥有多个值,请尝试改为:

clear; clc;
matlabpool open 4

a = zeros(4,1); 
parfor i = 1:4
    a(i) = 2^i;
end

matlabpool close 

并且有很好的示例说明如何在here的matlab文档中使用parfor