2011-02-01 10 views
11

इम Quartz.Net एक काफी सरल शेड्यूलिंग कार्य के साथ अवधारणा का एक सबूत कर रही है, केवल आवश्यकता मैं यह है कि सेवा यह क्वार्ट्ज पुन: कॉन्फ़िगर करने की जरूरत नहीं की पुन: प्रारंभ करनेकॉन्फ़िगरेशन फ़ाइल बदलते समय quartz.net नौकरियों को पुन: कॉन्फ़िगर कर सकते हैं?

यह परीक्षण कोड

 var factory = new StdSchedulerFactory(); 
     var scheduler = factory.GetScheduler(); 
     scheduler.Start(); 
है

app.config

<quartz> 
<add key="quartz.scheduler.instanceName" value="QuartzScheduler" /> 
<!-- Configure Thread Pool --> 
<add key="quartz.threadPool.type" value="Quartz.Simpl.SimpleThreadPool, Quartz" /> 
<add key="quartz.threadPool.threadCount" value="10" /> 
<add key="quartz.threadPool.threadPriority" value="Normal" /> 
<!-- Configure Job Store --> 
<add key="quartz.jobStore.type" value="Quartz.Simpl.RAMJobStore, Quartz" /> 
<add key="quartz.plugin.xml.type" value="Quartz.Plugin.Xml.JobInitializationPlugin, Quartz" /> 
<add key="quartz.plugin.xml.fileNames" value="quartz.config" /> 

मेरा काम config में प्रासंगिक डेटा फ़ाइल

<?xml version="1.0" encoding="UTF-8"?> 
<quartz xmlns="http://quartznet.sourceforge.net/JobSchedulingData" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
       version="1.0" 
       overwrite-existing-jobs="true"> 

    <job> 
    <job-detail> 
     <name>jobName1</name> 
     <group>jobGroup1</group> 
     <description>jobDesciption1</description> 
     <job-type>Jobs.MyJob, Jobs</job-type> 
     <volatile>false</volatile> 
     <durable>true</durable> 
     <recover>false</recover> 
    </job-detail> 

    <trigger> 
     <cron> 
     <name>cronName1</name> 
     <group>cronGroup1</group> 
     <description>CronTriggerDescription</description> 
     <job-name>jobName1</job-name> 
     <job-group>jobGroup1</job-group> 
     <cron-expression>0 0/1 * * * ?</cron-expression> 
     </cron> 

    </trigger> 
    </job> 
</quartz> 

क्रॉन अभिव्यक्ति काम करता है और तेह काम प्रत्येक मिनट निष्पादित किया जाता है, लेकिन अगर मैं 0 0/5 को अभिव्यक्ति बदल * * *? सेवा चलाते समय भी यह हर मिनट आग लगती है। तो Quartz.net को कॉन्फ़िगर करने का कोई तरीका है ताकि यह कॉन्फ़िगरेशन फ़ाइल में परिवर्तन फ़ाइल सुन सके? कि प्लगइन के बाद

<add key="quartz.plugin.xml.scanInterval" value="10" /> 

समय-समय पर फ़ाइल में परिवर्तन के लिए जाँच करेगा:

उत्तर

16

प्लगइन के लिए स्कैन अंतराल परिभाषा (सेकंड) जोड़ें।

+0

धन्यवाद, किस प्लगइन के लिए? – Anders

+0

क्षमा करें, नमूना छुपा था क्योंकि यह कोड टैग से घिरा नहीं था। –

+0

कूल धन्यवाद, अब मैं डीबग मोड में देख सकता हूं कि कॉन्फ़िगरेशन को दोबारा पोस्ट किया गया है, यह भी कहता है "मौजूदा नौकरियों को ओवरराइट नहीं करना"। और ट्रिगर समय नहीं बदला है? – Anders

संबंधित मुद्दे