How can I use multithreading in Matlab?
260 次查看(过去 30 天)
显示 更早的评论
Hi everyone
I have this sample code here:
a=0;
x = 0;
m = 0;
while (a==0)
m = m+1;
end
for i = 1:60
pause (1)
x = m;
if (i == 60)
a = 1;
end
Is there a way to make the two loops "communicate" with each other at the same time? So that I can update the x value with the m value continuosly?
Thanks in advance
2 个评论
采纳的回答
Ed Mitchell
2023-3-14
For people that are finding this MATLAB answer while searching more generally for how MATLAB manages the number of cores and hyperthreading, please refer to the following MATLAB Answer for more details.
0 个评论
更多回答(1 个)
Dinesh Yadav
2020-3-23
Hi, there are two for loops in the above code. The way MATLAB multi-threading works in case of for loops is it checks for loops and dependent variables between for loops. If there is no dependency they will be parallized otherwise they remain in serial execution. In case of above code as variable x is dependent on m these for loops cannot be parallized.
Also go through similar questions links below asked in community .
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Startup and Shutdown 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!