石英线程数

时间:2014-05-26 19:41:21

标签: spring quartz-scheduler

我正在使用Quartz并希望动态更改它的线程池大小,是否有人知道如何以编程方式重置org.quartz.threadPool.threadCount?提前谢谢。

2 个答案:

答案 0 :(得分:1)

它有点迟了但有人可能觉得它很有用。我对石英调度程序也有点新意,但这是我在2.2.3中的表现。

Properties prop = new Properties();
prop.setProperty("org.quartz.threadPool.threadCount", size);
/*
   set some other properties...
*/
SchedulerFactory sf = new StdSchedulerFactory(prop);
Scheduler sched = sf.getScheduler();

答案 1 :(得分:0)

我创建了一个ThreadPool实现,允许动态更改线程数。

https://github.com/epiresdasilva/quartz-dynamic-pool

基本上你要做的是:

  • 在石英配置中添加以下属性:

    org.quartz.threadPool.class=br.com.evandropires.quartz.impl.ExecutorServiceThreadPool
    
  • 获取线程池实例并调整线程数:

    DynamicThreadPool threadPool = DynamicThreadPoolRepository.getInstance().lookup(quartzSchedulerName);
    threadPool.doResize(yourNewPoolSize);