Quartzで定期処理を行う場合、デフォルトでは10スレッドがpoolされて、そのスレッドを使って処理されます。
場合によっては、10スレッドもプールされている必要ないよ。という場合もあると思います。
その場合は以下の設定でスレッド数を変更することができます。
(1) クラスパス内に、quartz.properties
というファイルを配置します
(2) quartz.properties
に「org.quartz.threadPool.threadCount」という項目を記述し、プールするスレッド数を指定します
# スレッド数3の場合 org.quartz.threadPool.threadCount=3
これでスレッド数が変更されます。
Quartzのログが出力される状態で、実行すると以下のような内容が出力され、スレッド数が3になっていること("with 3 threads.")が分かります。
2016/12/19 19:15:52.515 INFO [main] o.q.i.StdSchedulerFactory Using default implementation for ThreadExecutor 2016/12/19 19:15:52.554 INFO [main] o.q.c.SchedulerSignalerImpl Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl 2016/12/19 19:15:52.554 INFO [main] o.q.c.QuartzScheduler Quartz Scheduler v.2.2.3 created. 2016/12/19 19:15:52.555 INFO [main] o.q.s.RAMJobStore RAMJobStore initialized. 2016/12/19 19:15:52.556 INFO [main] o.q.c.QuartzScheduler Scheduler meta-data: Quartz Scheduler (v2.2.3) 'QuartzScheduler' with instanceId 'NON_CLUSTERED' Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally. NOT STARTED. Currently in standby mode. Number of jobs executed: 0 Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 3 threads. Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered.