Struct ckb_db_migration::MultiProgress [−][src]
pub struct MultiProgress { /* fields omitted */ }
Expand description
Manages multiple progress bars from different threads
Implementations
Creates a new multi progress object.
Progress bars added to this object by default draw directly to stderr, and refresh a maximum of 15 times a second. To change the refresh rate set the draw target to one with a different refresh rate.
Creates a new multi progress object with the given draw target.
Sets a different draw target for the multiprogress bar.
Set whether we should try to move the cursor when possible instead of clearing lines.
This can reduce flickering, but do not enable it if you intend to change the number of progress bars.
Adds a progress bar.
The progress bar added will have the draw target changed to a
remote draw target that is intercepted by the multi progress
object overriding custom ProgressDrawTarget
settings.
Inserts a progress bar.
The progress bar inserted at position index
will have the draw
target changed to a remote draw target that is intercepted by the
multi progress object overriding custom ProgressDrawTarget
settings.
If index >= MultiProgressState::objects.len()
, the progress bar
is added to the end of the list.
Removes a progress bar.
The progress bar is removed only if it was previously inserted or added
by the methods MultiProgress::insert
or MultiProgress::add
.
If the passed progress bar does not satisfy the condition above,
the remove
method does nothing.
Waits for all progress bars to report that they are finished.
You need to call this as this will request the draw instructions from the remote progress bars. Not calling this will deadlock your program.
Works like join
but clears the progress bar in the end.
Trait Implementations
Returns the “default value” for a type. Read more