关于matlab使用parfor循环里变量不能被分类?

2019-07-17 13:48发布

程序结构大致如下:
......
hk=......
hh=zeros(m,3);
parfor x=1:m
          i = 3*x+1;
          j = mod(x-1,a)+1;
          hh(i,2)=hh(i,2)+hk(j,2);
          hh(i,3)=hh(i,3)+1;
end

然后就报错:the variable hh in a parfor cannot be classified.


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
1条回答
GarethCai
2019-07-17 16:16
在一个parfor loop中使用的变量被分为loop、sliced、broadcast、reduction和temporary几类(详见matlab帮助中的Classification of Variables),题主在parfor语句外定义了hh,其应为broadcast 变量,但broadcast变量在parfor循环中不能被赋值。

一周热门 更多>