C# 如何删除作业并触发/替换为新作业?

C# 如何删除作业并触发/替换为新作业?,c#,quartz-scheduler,quartz.net,C#,Quartz Scheduler,Quartz.net,我有一个任务,可以连续访问数据库并计算表中的行数。当数字达到某个阈值时,作业必须停止检查表并触发一些新作业。现在,我正在尝试使用InterruptableJob来执行此操作,但我不确定如何删除第一个作业。即: (1) 作业1每10秒触发一次。访问SQL数据库并计算给定表中的行数 (2) 当有5行时,Job1将中断() (3) 现在Job2需要启动,而Job1必须停止运行。如何删除作业1?我知道scheduler.DeleteJob(),但我不确定何时何地调用它,因为我无法在类中为Job1更改sc

我有一个任务,可以连续访问数据库并计算表中的行数。当数字达到某个阈值时,作业必须停止检查表并触发一些新作业。现在,我正在尝试使用
InterruptableJob
来执行此操作,但我不确定如何删除第一个作业。即:

(1) 作业1每10秒触发一次。访问SQL数据库并计算给定表中的行数

(2) 当有5行时,Job1将
中断()

(3) 现在Job2需要启动,而Job1必须停止运行。如何删除作业1?我知道
scheduler.DeleteJob()
,但我不确定何时何地调用它,因为我无法在类中为
Job1
更改
scheduler

另外,如何触发Job2在此时开始运行?我已经阅读了关于
作业链接JobListener
,但是可以看到,我在启动链接作业时也遇到了问题

为了澄清,目前,Job2只不过是打印到控制台

现在Job2需要启动,而Job1必须停止运行。如何删除 工作1?我知道scheduler.DeleteJob(),但我不确定何时何地启动 调用它,因为我无法在类中更改Job1的调度程序


最后一句话实际上是不正确的。从传递到作业的
iObjExecutionContext
中,您可以轻松访问计划程序,然后从计划程序中删除当前作业,并根据需要计划另一个作业。

。我现在知道如何访问调度程序了,非常感谢。