Is there a way to tell if a function is executing inside a parfor?
13 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Adam
el 11 de Sept. de 2014
Comentada: Adam
el 12 de Sept. de 2014
When I just start typing on the command line and tab to give auto-complete options I came across
isinparfor
This sounded as though it is exactly what I am looking for, but it is undocumented, does nothing and when I look inside the function the 'parfor_depth' that it calls also seems not to do anything either.
I have a function which in some circumstances opens up a dialog with uiwait for the user to choose a directory. This function happens to now be being called from another function and the root function for these calls is being executed in a parfor loop. This causes problems because the program just hangs for ever in the uiwaits since the dialog boxes can't be shown within a parfor loop.
So I was hoping there would be some function or way of telling in the function whether or not it is being executed inside a parfor loop so that I can avoid doing the uiwait browser dialog in that case. So far I haven't been able to find one though.
0 comentarios
Respuesta aceptada
Edric Ellis
el 12 de Sept. de 2014
You could try using
isOnWorker = ~isempty(getCurrentTask());
to see if your code is running on a worker.
Más respuestas (0)
Ver también
Categorías
Más información sobre Startup and Shutdown en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!