parfeval blocks other parfeval?
Mostrar comentarios más antiguos
Hi to all! I need to run a function (it's name is read_channel) in a worker while other workers run other functions. I call parfeval for the function read_channel and, after that, I call parfeval with another function. My problem is that, until the first parfeval doesn't finish, the other parfeval don't start. How can I do? The functions don't need to be synchronized
Thank you all!
data = csvread('data.csv');
first = parfeval(@read_channel,1);
if((strcmp(first.State, 'finished')==1)
out = fetchOutputs(first);
fprintf("output from first");
end
for m=1:2
others(m) = parfeval(@analyze,1,data);
end
2 comentarios
Edric Ellis
el 30 de Mzo. de 2016
What size parallel pool are you opening? Your subsequent parfeval calls should definitely proceed if you have sufficient workers available.
Paolo Lolo
el 30 de Mzo. de 2016
Editada: Paolo Lolo
el 30 de Mzo. de 2016
Respuestas (0)
Categorías
Más información sobre Parallel for-Loops (parfor) en Centro de ayuda y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!