小编wal*_*len的帖子

如何在不重启服务器的情况下添加带有触发器的作业来运行Quartz.Net调度程序实例?

是否可以添加带有触发器的作业来运行Quartz.NET调度程序实例而无需重新启动服务器?

c# quartz.net c#-4.0

4
推荐指数
2
解决办法
5306
查看次数

作业不使用JobChainingJobListener链接

我有我的Quartz调度程序的当前代码:

var scheduler = StdSchedulerFactory.GetDefaultScheduler();

// Job1
var Job1 = JobBuilder.Create<Test1>().WithIdentity("job1", "group1").Build();
// Job2
var Job2 = JobBuilder.Create<Test2>().WithIdentity("job2", "group2").Build();

// Triggers
ITrigger trigger1 = TriggerBuilder.Create().WithIdentity("trigger1", "group1").StartNow().Build()
ITrigger trigger2 = TriggerBuilder.Create().WithIdentity("trigger2", "group2").StartNow().WithSimpleSchedule(x => x.WithIntervalInSeconds(1).WithRepeatCount(4)).Build();

// JobKeys
JobKey jobKey1 = new JobKey("Job1", "group1");
JobKey jobKey2 = new JobKey("Job2", "group2");

// Chain jobs
JobChainingJobListener chain = new JobChainingJobListener("testChain");
chain.AddJobChainLink(jobKey1, jobKey2);
scheduler.ScheduleJob(Job1, trigger1);
scheduler.AddJob(Job2, true);

// Global listener here. I am not sure what I have is correct.
scheduler.ListenerManager.AddJobListener(chain, GroupMatcher<JobKey>.AnyGroup());` 

scheduler.Start();
Run Code Online (Sandbox Code Playgroud)

(为了澄清,这些工作只是打印到控制台.)

在Quartz网站上,我发现这将添加一个对所有作业感兴趣的JobListener:scheduler.ListenerManager.AddJobListener(chain, …

c# quartz.net

4
推荐指数
1
解决办法
2348
查看次数

使用Java 8流API按多个属性对对象进行分组

鉴于我们有一份银行清单,每家银行都有多个办事处,

public class Bank {
   private String name;
   private List<String> branches;
   public String getName(){
       return name;
   }
   public List<String> getBranches(){
       return branches;
   }
}
Run Code Online (Sandbox Code Playgroud)

例如:

Bank "Mizuho": branches=["London", "New York"]
Bank "Goldman": branches = ["London", "Toronto"]
Run Code Online (Sandbox Code Playgroud)

根据银行名单,我会得到每个城市的银行代表地图.在上面的例子中,我需要一个结果

Map["London"] == ["Mizuho", "Goldman"]
Map["New York"] == ["Mizuho"]
Map["Toronto"] == ["Goldman"]
Run Code Online (Sandbox Code Playgroud)

如何使用Java 8 API实现该结果?使用pre-Java8很容易,但很冗长.谢谢.

java java-8 java-stream

4
推荐指数
1
解决办法
824
查看次数

我想要一个在每个月的第一天执行的 Quartz 吗?

ITrigger trigger = TriggerBuilder.Create()
                       .StartAt(DateTime.Today.AddMinutes(1))
                          .WithIdentity("trigger1", "group1")
                           .StartNow()
                          .WithSimpleSchedule(x => x
                              .WithIntervalInSeconds(10)
                          .WithRepeatCount(0)
                            )
                      .Build();
Run Code Online (Sandbox Code Playgroud)

我想要在每个月的第一天执行的触发器

scheduler task crontrigger quartz.net

3
推荐指数
1
解决办法
7256
查看次数

如何让触发器等待自身结束再次运行 Quartz C#

我正在使用石英 2.5.0.0

我有以下代码来运行我想要的任何工作。我所有的工作都放在一个文件夹中,因为我只是把它放在那里。

var scheduler = StdSchedulerFactory.GetDefaultScheduler();
scheduler.Start();

var t = new ImportingLib.Importer();
t.DoImport();

foreach (var component in t.CallAllComponents())
{   
    var job = JobBuilder.Create(component)
        .WithIdentity(component.Name)
        .Build();

    var trigger = TriggerBuilder.Create()
   .WithIdentity($"{component.Name}Trigger")
   .StartNow()
   .WithSimpleSchedule(x => x
       .WithIntervalInSeconds(10)
       .RepeatForever())
   .ForJob(component.Name)
   .Build();
    scheduler.ScheduleJob(job, trigger);
}
Run Code Online (Sandbox Code Playgroud)

我想让这个工作每 10 秒运行一次,但我必须等待它自己结束,在此之后,再次启动同一个工作。一种知道胎面何时结束应该如何工作的方法,但我没有找到如何做到这一点。知道如何让它工作吗?

c# quartz.net

3
推荐指数
1
解决办法
1176
查看次数

这是如何工作的 - Java 8 Optional.of和Optional.ofNullable

我对Java 8 Optionals有疑问.

以下代码给出了编译错误:

Integer number = Optional.ofNullable(new Integer(10)); 
Run Code Online (Sandbox Code Playgroud)

但是,当我们做以下它,我不明白这是怎么工作:

Integer number = Optional.ofNullable(new Integer(10)).orElse(10); 
Run Code Online (Sandbox Code Playgroud)

如果我们查看文档Optional.ofNullable(),它会返回一个类型的对象static <T> Optional<T> ofNullable(T value),表示它是内部类型转换,但文档说它的返回类型是Optional.

我得到的.orElse方法返回类型T,如果它进入orElse条件,它将工作正常,即如果传入的对象是null,但如果它不是null它是如何对它进行类型转换?

java optional java-8

3
推荐指数
1
解决办法
656
查看次数

使用 C# 在 Quartz .Net 中更新 JobDataMap 无法按预期工作

当我尝试暂停我的工作时,我想更新它的数据图,以便可以将“暂停”状态保存在那里。我的代码如下所示:

public void Pause(JobKey key)
{
    var job = Scheduler.GetJobDetail(key);
    if(job == null) return;

    job.JobDataMap.Put("Status", "Paused");
    Scheduler.PauseJob(job.Key);
}
Run Code Online (Sandbox Code Playgroud)

作业按预期暂停,但其状态未更新,我不明白为什么。可能是什么原因?还有其他方法可以更新JobDatamap返回的作业吗Scheduler.GetJobDetail(key)

c# quartz.net

2
推荐指数
1
解决办法
2730
查看次数

Cron表达式每45分钟执行一次

我想要一个每45分钟触发一次的cron表达式。

根据文档,我创建了此0 0/45 * * * ?表达式。

但是会以12:00、12:45、13:00、13:45、14:00这样的模式触发。

但是我期望和想要的是在12:00、12:45、13:30、14:15被解雇。

我想念什么?

cron quartz.net

1
推荐指数
1
解决办法
3146
查看次数

标签 统计

quartz.net ×6

c# ×4

java ×2

java-8 ×2

c#-4.0 ×1

cron ×1

crontrigger ×1

java-stream ×1

optional ×1

scheduler ×1

task ×1