MantisBT
Mantis Bug Tracker Workflow

View Revisions: Issue #31763 All Revisions ] Back to Issue ]
Summary 0031763: Foundation Classes - reporting of progress within parallel algorithms
Revision 2020-09-13 08:50 by abv
Description Current version of progress indicator tools supporting parallel algorithms developed within 0025748 cannot report properly progress within the scope which is executed by paralleled algorithm (and more generally - in the situation when range is not advanced immediately at the call of the method Next()).

The problem is that method Message_ProgressScope::Value() returns field myValue which is incremented when Next() is called. If actual progress advancement is deferred, this does not match actual state of the progress.

In parallel scenario scope gets fully discharged by instantiating array of Range objects before actual execution of the algorithm, so its method Value() will return Max(), which is incorrect.

Note that this problem was corrected in intermediate variant of the fix for 0025748 (see CR25748_4), but lost with changes conected with introduction of the Range class.
Revision 2020-09-13 08:46 by abv
Description Current version of progress indicator tools supporting parallel algorithms developed within 0025748 cannot report properly progress within the scope which is executed by paralleled algorithm (and more generally - in the situation when range is not advanced immediately at the call of the method Next()).

The problem is that method Message_ProgressScope::Value() returns field myValue which is incremented when Next() is called. If actual progress advancement is deferred, this does not match actual state of the progress.

In parallel scenario scope gets fully discharged by instantiating array of Range objects before actual execution of the algorithm, so its method Value() will return Max(), which is incorrect.



Copyright © 2000 - 2021 MantisBT Team
Powered by Mantis Bugtracker