Quartz通常通过quartz.properties
类路径配置。
例如:
org.quartz.scheduler.instanceName = BagginsScheduler
org.quartz.threadPool.class=org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadCount=5
org.quartz.threadPool.threadPriority=1
在将运行 Quartz 作业的同一应用程序中,我想读出属性。
读取调度程序名称很容易:
Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
String name = scheduler.getSchedulerName();
但是我怎样才能读取 `threadPriority' 属性呢?
以下不起作用:
scheduler.getContext().getString("org.quartz.threadPool.threadPriority");
更新的解决方案:似乎无法通过 Quartz API 读取该属性,您必须通过常规Properties
:
Properties prop = new Properties();
prop.load(AnyClassUsedByJVM.class.getClassLoader().getResourceAsStream("quartz.properties"));
String prio = prop.getProperty("org.quartz.threadPool.threadPriority");
这工作正常。