如何在RSS源不定期推送的情况下订阅它?
-
已经尝试过使用
Timer
、TimerTask
、甚至是Quartz
任务调度框架,发现所写入的定时任务都没有实际生效。考虑到有些特殊订阅源会不定期推送的情况,所以想要造一个可以随意更改时间的定时任务来监听订阅源是否推送更新,以此达到及时推送的目的。
经过四五天的研究,还是没有实现定时任务,个人猜测需要用到
CoroutineScope
,但是这个我是看不懂,希望可以得到帮助。使用的开发环境是:
Java 17
,Kotlin 1.6.21
,Mirai Console 2.11.1
。 -
用定时任务框架应该是可以的,你可以把代码贴出来看看是怎么回事
-
@novacoo
使用定时任务框架是没有问题的。
我这里使用了轻量级的定时任务框架hutool-cronimplementation("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();
-
好的,蟹蟹,我试试
-
不生效的原因找到了,当方法被
suspend
修饰以及使用suspend { statement.... }
时无效
-
kt发起
HTTP
请求似乎一定是suspend
才行?……