Opened 6 years ago

Closed 3 years ago

#789 closed activism (implemented)

need weighted flavor of arb_progress

Reported by: westram Owned by: westram
Priority: normal Milestone:
Component: Library (CORE) Version: SVN
Keywords: Cc:

Description

Needed whenever doing 2 (or more) different kinds of things, where one takes far more time than another.

Example:

arb_progress initial("doing two diff things",2);
do_quick_thing(); // increments its own sub-progress
do_slow_thing(); // increments its own sub-progress

Progress runs quickly up to 50%, then it gets slow and always show too optimistic estimation.

Wanted style:

arb_weighted_progress initial("doing two diff things"); 
initial.inc_weighted(0.1);
do_quick_thing();
initial.inc_weighted(0.9); 
do_slow_thing(); // runs 9 times slower than do_quick_thing

Notes:

  • arb_weighted_progress always shall run through range [0.0 .. 1.0]
  • sum of all weights added using inc_weighted() shall sum up to 1.0
  • provide method to retrieve leftover weight

Change History (4)

comment:1 Changed 3 years ago by westram

  • Status changed from new to _started

comment:2 Changed 3 years ago by westram

basic implementation with [18888]:

arb_progress progress(WEIGHTED, "title", phase1_fraction);

comment:3 Changed 3 years ago by westram

examples demonstrating the effect of the weighted progress:

(see commit message)

comment:4 Changed 3 years ago by westram

  • Resolution set to implemented
  • Status changed from _started to closed

by [18959]

Note: See TracTickets for help on using tickets.