MiraiForum

    • 注册
    • 登录
    • 搜索
    • 热门
    • 最新
    • 未解决
    • 标签
    • 群组
    • 友情链接

    如何在RSS源不定期推送的情况下订阅它?

    开发交流
    3
    6
    438
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • N
      novacoo 最后由 编辑

      已经尝试过使用Timer、TimerTask、甚至是Quartz任务调度框架,发现所写入的定时任务都没有实际生效。

      考虑到有些特殊订阅源会不定期推送的情况,所以想要造一个可以随意更改时间的定时任务来监听订阅源是否推送更新,以此达到及时推送的目的。

      经过四五天的研究,还是没有实现定时任务,个人猜测需要用到CoroutineScope,但是这个我是看不懂,希望可以得到帮助。

      使用的开发环境是:Java 17,Kotlin 1.6.21,Mirai Console 2.11.1。

      Orisland 1 条回复 最后回复 回复 引用 0
      • RainChan
        RainChan 摸鱼 最后由 编辑

        用定时任务框架应该是可以的,你可以把代码贴出来看看是怎么回事

        1 条回复 最后回复 回复 引用 0
        • Orisland
          Orisland 摸鱼 @novacoo 最后由 Orisland 编辑

          @novacoo
          使用定时任务框架是没有问题的。
          我这里使用了轻量级的定时任务框架hutool-cron

          implementation("cn.hutool:hutool-cron:5.8.1")
          

          do something,command变量为cron语句,你可以通过收到变量后修改定时任务。

                      String command = String.format("%s %s * * *", minute, hour);
                      CronUtil.schedule(command, new Task() {
                          @Override
                          public void execute() {
                                  try {
                                     //do something
                                      return;
                                  }catch (Exception e){
                                      e.printStackTrace();
                              }
                          }
                      });
                      CronUtil.start();
          

          小栗子

          1 条回复 最后回复 回复 引用 0
          • N
            novacoo 最后由 编辑

            好的,蟹蟹,我试试

            1 条回复 最后回复 回复 引用 0
            • N
              novacoo 最后由 编辑

              不生效的原因找到了,当方法被suspend修饰以及使用

              suspend { statement.... }
              

              时无效

              1 条回复 最后回复 回复 引用 0
              • N
                novacoo 最后由 编辑

                kt发起HTTP请求似乎一定是suspend才行?……

                1 条回复 最后回复 回复 引用 0
                • 1 / 1
                • First post
                  Last post
                Powered by Mamoe Technologies & NodeBB | 友情链接 | 服务监控 | Contact