Multi-threading with .net framework
조회 수: 2 (최근 30일)
이전 댓글 표시
When I run following code, I expect to see mixed printing from both functions. However, they run sequentially not in parallel. How can I change this code to force Matlab prints results from both functions together? Is there anyway without using Parallel computing?
NET.addAssembly(strcat(pwd,'\','NetDocDelegate.dll'));
divDel = NetDocDelegate.delInteger(@Run);
asyncRes{1} = divDel.BeginInvoke(1,[],[]);
if asyncRes{1}.IsCompleted == false
asyncRes{2} = divDel.BeginInvoke(2,[],[]);
end;
function ret = Run(l)
for i=1:100000
display(strcat(num2str(i),'(',num2str(l),')'))
end;
ret = l;
end
댓글 수: 0
답변 (1개)
Guillaume
2017년 3월 8일
Matlab is single threaded. There is no way for both delegate to run simultaneously. You would indeed need the parallel toolbox to do something like that.
댓글 수: 3
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!