是否有任何小部件可用于根据完成历史百分比预测下载(或任何其他过程)何时完成?
简单的版本只会根据开始时间、当前时间和完成百分比进行 2 点拟合,但可能会有更好的选择。
GUI 最宽的会很好,但只返回值的类会很好。
是否有任何小部件可用于根据完成历史百分比预测下载(或任何其他过程)何时完成?
简单的版本只会根据开始时间、当前时间和完成百分比进行 2 点拟合,但可能会有更好的选择。
GUI 最宽的会很好,但只返回值的类会很好。
对于我将尝试的理论算法,如果我要编写这样的小部件,将类似于:
那应该做...
(缺少的步骤是:剩余千字节除以平均 KiB/s)
大多数进度条小部件都有一个 update() 方法,该方法需要完成百分比。
然后,他们根据自开始以来的时间和最新百分比计算剩余时间。如果您有一个设置时间较长的进程,您可能希望添加更多功能,以便它不包括此时间,可能通过在发送 0% 更新时重置预测时钟。
它与其他一些提议具有相同的效果,但通过收集作为时间函数的完成百分比数据,可以使用统计方法生成 R^2 最佳拟合线并将其投影到 100% 完成。为了使其考虑到当前操作,可以对较新的数据赋予更大的权重(或者可以对旧数据进行细化)并使其忽略短期波动,可以对第一个数据点赋予更大的权重。