有条件时停止并开始执行cron-job-managernode-cron

问题描述

因此,我发现了一个有关此问题的旧问题(在这里:How to stop a node cron job),但它对我不起作用(并且我不知道为什么)。 我正在使用cron-job-manager(因为我计划同时使用多个计划的作业),但据我所知,它应该基于node-cron构建(但我是新手。) )

所以,我再次问:在特定条件下如何处理启动和停止cron作业? 我实际上是为不和谐的机器人执行此操作的:基本上,用户输入了一个启动命令和一个停止命令。

第一次尝试是这样的:

job = cron('keyTask','* * * * * *',()=>{
  //Do the actual job
  },{
  start: false,timeZone:"Europe/London",});

switch args[1]
case go: 
  job.start();
  break;
case stop:
  job.stop();
  break;

这在用户发出“执行”命令时成功启动了作业,但是在发出“停止”命令时,计划的作业不会停止。

第二次尝试是:

  var x = args [1];
  new cron('keyTask',job(doTheThing(x)),});

其中job()是一个预先定义的函数,其中包含实际的工作,而DoTheThing()是根据用户在输入中说的内容而给出true或false的函数。 这将一次执行计划的作业,然后停止。 我以某种方式怀疑这里的问题与我在外部定义函数有关,而在大多数示例中,我看到函数总是在cron()中编写的。 因此,我没有主意:在此先感谢您的帮助!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...