【问题标题】:Calculate refresh rate based on number of items根据项目数计算刷新率
【发布时间】:2017-11-29 17:14:14
【问题描述】:

我有一个以可变速率生成条目的系统。它可以是每秒 1 次或每秒 100 次(或更多或更少)。

然后我有一个页面需要在每次屏幕刷新时显示大约 X 个项目(比如说 10 个)。

因此,例如,如果系统每秒生成 1 个项目,则获取项目的最佳刷新率是 10 秒。

我需要的是一种根据以前的数据计算 下一个 最佳利率的方法,因此在下一次刷新时,我会得到一些与我正在寻找的数字差不多的项目。

当然这不会是完美的(如果有大量信息,我可能会检索到比原来的 10 多得多的项目)但这并不重要。

这个想法是不要过度获取数据(因为一次显示一两个条目是没有效率的),但也不要让系统长时间休眠,因为一次 100 个条目都没有用。

对任何算法有什么帮助我的想法吗?

【问题讨论】:

    标签: user-interface page-refresh rate


    【解决方案1】:

    你已经有了你的算法,你的帖子很好地描述了它。

    如果没有以前的汇率数据,那么... 计算每秒获得的物品数量 (X),然后将总数 (T) 除以 X 得到 Y。现在的速率是 Y 秒。对于在计算速率时经过的每一秒,将新的 Y 添加到前一个 Y 并除以 2(平均它们),即新的速率(Y 秒)。现在您可以存储每秒或收到 T 个项目后的速率。

    如果有以前的数据,则将last和new Y设置为以前存储的速率,然后继续上述方法。

    【讨论】:

    • 不确定我是否在关注你。因此,使用我上面的示例,假设在第一次获取时我有 50 件物品。由于这是我的第一次获取,我需要假设我在 1 秒内得到了它(只是为了简化......不能使用 0,你知道,因为 0 不喜欢在分母中)。如果我的总数是 10,那么我的新比率应该是 10/50。由于我不想以少于一秒的间隔进行提取,因此第二次提取将在第一次提取后 1 秒发生。所以,第二次取货,我得到了 5 件物品。现在你说我应该使用 (10/5 + 10/50) / 2?
    • 如果你的总数是 10 但你得到了 50 个项目,那么你就有问题了。是的,计算你每秒获得的物品数量,然后不断平均它们。
    猜你喜欢
    • 2016-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多