-
-
Notifications
You must be signed in to change notification settings - Fork 706
Description
Initial discussion occurred in #3116 (Smoother Progress Reporting).
The current problem exists where progress reporting is not smooth. While all thread increase the progress only the calling thread invoke events.
The proposed patch caused all thread to invoke events. This could cause problems with too many events being triggered, concurrent invocation of events, and issues with change in behavior of the thread invoke events.
An initial alternative suggested was to use a "event queue" and have the main/calling thread only monitor for events, and invoke them. And perhaps no longer do computations.
There maybe other solutions that could be implemented with more effort, or other ways to improve progress reporting on an application without ( may be minor) modifications to ITK. For example an application could run ITK in a worker thread and "poll" the progress. Another example is the the 3D Slicer SimpleFilter modules, ITK event are placed on the Qt event queue, then the Qt event handle runs the callbacks.