进度条元素
·总量
·当前进度
·耗时
通过以上元素可以延伸出:完成百分比、速度、预计剩余时间、根据设置速度快慢阀值用不同的颜色来显示进度条。
实现
type Bar struct {
mu sync.Mutex
line int //显示在哪行 多进度条的时候用
prefix string //进度条前置描述
total int //总量
width int //宽度
advance chan bool //是否刷新进度条
done chan bool //是否完成
currents map[string]int //一段时间内每个时间点的完成量
current int //当前完成量
rate int //进度百分比
speed int //速度
cost int //耗时
estimate int //预计剩余完成时间
fast int //速度快的阈值
slow int //速度慢的阈值
}