zoukankan      html  css  js  c++  java
  • 关于将问题数学化的一点思考

          最近在做定时任务的模块,在本地写了简单的demo测试执行稳定性问题

          demo很简单:计划开始后每隔25分钟将当前时间写入log中,执行一段时间后检查是否有漏执行的情况

          在运行一段时间后检查log发现了一个问题:

       假设第一次打印时间为 2021-06-02 09:09:28,

          那么再一段时间后的某个时间点又会记录一次时间 2021-06-02 14:09:28  这两个时间里 分针是一样的都是9分  两者相差300分钟

          乍一看貌似还有点意思,会不会再经过某个时间后,打印时间的分钟数又是09呢?答案是肯定的(最快的方式就是极值法:假设每个整点打印当前时间,那么下次就是经过60分钟再次打印)

          那如何将这个问题数学化从而快速的得到任意时间打印当前时间,经过多久能再次循环?

          比如我的计划任务间隔时间为46分钟呢   或者改为19分钟呢   

         

          这里需要讲一个小学学过的知识:最小公倍数(两个或多个整数公有的倍数叫做它们的公倍数)

          也就是算你的间隔执行时间 (假设是25) 和 60之间的最小公倍数。

  • 相关阅读:
    springsecurity-微服务-springsecurity工具类封装
    springsecurity-微服务-认证授权的过程
    springsecurity-CSRF
    springsecurity-自动登录实现
    Vulnhub-靶机-DC: 9
    Xss-labs-level3-6
    靶机-生成自有账户和密码提权
    靶机-敲击相关方式汇总
    Vulnhub-靶机-DIGITALWORLD.LOCAL: BRAVERY
    Xss-labs-level1-2
  • 原文地址:https://www.cnblogs.com/yhnet/p/14844713.html
Copyright © 2011-2022 走看看