5
A
回答
1
你可以建立触发其他作业触发任务。通过使用JobMap属性可以对其进行配置,并且可以重新使用该类来触发任意一组作业(也可以为自己执行第一组作业)。
8
你不能用相同的触发(一个给定的任务可以有多个触发器,但不是反之亦然)多项工作联系在一起,但你可以设置多个相同的触发器,每一个工作。
为了让他们并行运行,你需要确保Quartz的线程池有足够的能力这样做。有关线程池的配置选项,请参见here。
+1
链接已经死了。如果可以,请纠正 – 2012-10-17 14:48:19
0
我最终作出一个帮助功能GetTrigger
class Program
{
static void Main(string[] args)
{
Common.Logging.LogManager.Adapter = new Common.Logging.Simple.ConsoleOutLoggerFactoryAdapter { Level = Common.Logging.LogLevel.Info };
IJobDetail jobOne = JobBuilder.Create<JobOne>()
.WithIdentity(typeof(JobOne).Name)
.Build();
IJobDetail jobTwo = JobBuilder.Create<JobTwo>()
.WithIdentity(typeof(JobTwo).Name)
.Build();
var jobOneTrigger = GetTrigger(new TimeSpan(0, 0, 5), jobOne);
var jobTwoTrigger = GetTrigger(new TimeSpan(0, 0, 5), jobTwo);
IScheduler scheduler = StdSchedulerFactory.GetDefaultScheduler();
scheduler.ScheduleJob(jobOne, jobOneTrigger);
scheduler.ScheduleJob(jobTwo, jobTwoTrigger);
scheduler.Start();
}
private static ITrigger GetTrigger(TimeSpan executionTimeSpan, IJobDetail forJob)
{
return TriggerBuilder.Create()
.WithIdentity(forJob.JobType.Name+"Trigger")
.StartNow()
.WithSimpleSchedule(x => x
.WithInterval(executionTimeSpan)
.RepeatForever())
.ForJob(forJob.JobType.Name)
.Build();
}
}
public class JobOne : IJob
{
public void Execute(IJobExecutionContext context)
{
Console.WriteLine("JobOne");
}
}
public class JobTwo : IJob
{
public void Execute(IJobExecutionContext context)
{
Console.WriteLine("JobTwo");
}
}
相关问题
- 1. 石英作业多次触发
- 2. 石英CRON只触发作业一次
- 3. 石英调度程序中的多个作业未根据触发器运行
- 4. Grails应用程序中的石英作业被触发三次
- 5. 当石英调度程序启动时需要触发作业
- 6. 恢复卡石英作业
- 7. 石英工作不触发预期
- 8. 石英触发器过去
- 9. 测试石英CronTrigger触发
- 10. 石英2.x触发器
- 11. 石英触发新线程?
- 12. 具有特定开始时间的石英单个作业多重触发器不起作用
- 13. 不能用石英插件使用grails运行多个作业
- 14. 无法与石英运行多个作业
- 15. 在qrtz表中创建触发器/作业时,石英调度程序死锁
- 16. 如何使用相同的触发器在石英调度程序中安排多个作业?
- 17. Jenkins矩阵作业不触发多个下游作业
- 18. 石英作业不更新数据库
- 19. 石英调度程序丢失作业
- 20. 如何为Java的石英cron作业
- 21. 管理石英作业,删除
- 22. 石英状态作业报告
- 23. 石英:动态作业调度
- 24. 无法调度石英作业
- 25. 石英作业只运行一次
- 26. 在Grails中禁用石英作业
- 27. 带Crontrigger的非重复石英作业?
- 28. 石英防止作业重叠
- 29. 石英防止作业执行jobToBeExecuted
- 30. 在石英作业中使用CDI
理想情况下,你不应该做这样的事情,因为它不是调度作业的正确方法 – 2016-12-01 11:45:42