AFIAK, вы можете создать столько планировщики, как вам нравится в любом приложении, но вы не можете использовать стандартный подход кварц конфигурации для этого, как ожидают, только один набор свойств планировщика (смотрите в StdSchedulerFactory
implementation и this блоге, если интересно) :
По умолчанию, в Quartz.Net, StdSchedulerFactory отвечает за настройку планировщика. Когда планировщик Quartz.Net запущен, завод будет пытаться автоматически настроить планировщик с помощью поиска информации о конфигурации в разных местах:
- конфигурационный файл хостинг приложения
- файл, указанный в переменной окружения
- файл quartz.config
- внедренный файл конфигурации
Так что вы можете d о не использовать автоматическую настройку планировщика, но
сам создать отдельные коллекции свойств и передать их в планировщик конструкторами создания:
public StdSchedulerFactory(NameValueCollection props);
используя код подход:
NameValueCollection scheduler1Properties = new NameValueCollection();
properties["quartz.scheduler.instanceName"] = "SingleThreadScheduler";
properties["quartz.threadPool.type"] = "Quartz.Simpl.SimpleThreadPool, Quartz";
properties["quartz.threadPool.threadCount"] = "1";
...
var factory = new StdSchedulerFactory(scheduler1Properties);
или вы можете создать отдельные конфигурации кварца и напрямую использовать класс кварца PropertiesParser для чтения
/// <summary>
/// Reads the properties from file system.
/// </summary>
/// <param name="fileName">The file name to read resources from.</param>
/// <returns></returns>
public static PropertiesParser ReadFromFileResource(string fileName)
и получить коллекция:
/// <summary>
/// Gets the underlying properties.
/// </summary>
/// <value>The underlying properties.</value>
public virtual NameValueCollection UnderlyingProperties
{
get { return props; }
}
// PropertiesParser
класс используется непосредственно в default конфигурации чтения реализации.