2009-09-19 11 views
6

मैं वर्तमान में एक सरल अनुप्रयोग है कि हर (उदाहरण के लिए) के लिए 5 सेकंड कोड का एक टुकड़ा पर अमल करना चाहिए में Quartz.net को लागू कर रहा हूँ। केवल कोड को कभी-कभी पूरा होने में 5 सेकंड से अधिक समय लगता है।Quartz.net रिपीट जॉब पूरा हो गया है

पहले तो मुझे समस्या यह है कि कोड, जबकि एक ही कोड अभी भी चल रहा था मार डाला गया था थी, मैं IJob इंटरफेस के बजाय IStateFulJob इंटरफ़ेस का उपयोग करके यह तय की।

लेकिन क्या मैं वास्तव में पूरा करने के लिए चाहते हैं, कि मेरा काम निष्पादित किया जाता है 5 सेकंड के बाद काम, पूरा हो गया है नहीं 5 सेकंड के बाद अपने पिछले काम शुरू कर दिया जाता है।

मैं उस घटना को संभाल सकता हूं जो ट्रिगर होता है जब मेरा श्रोता 'सुनता है' कि नौकरी तैयार है और नौकरी फिर से निर्धारित करती है, लेकिन मैं सोच रहा था कि इसके लिए कोई मानक कार्यक्षमता नहीं है।

+1

'IStatefulJob' को बहिष्कृत कर दिया गया है। समवर्ती रूप से निष्पादित करने के लिए एकाधिक नौकरी उदाहरणों को अस्वीकार करने के लिए 'अस्वीकरण कॉन्क्यूरेंट एक्सेक्यूशन' विशेषता का उपयोग करें। –

उत्तर

4

इस समय वहाँ के रूप में Quartz.NET विचार पर खेलता है एक पूर्वनिर्धारित (पहले से गणना की) आग समय और सही समय के लिए मतदान कार्य को गति प्रदान करने के लिए इस लक्ष्य को हासिल करने के लिए कोई मानक तरीका है।

जिस तरह से आप के लिए सबसे आसान रास्ता होगा का वर्णन किया। या तो अगली निष्पादन या श्रोता से नौकरी से शेड्यूल करें।

+5

क्या इससे अब तक कोई बदल गया है? यह चार साल पहले जवाब था, क्या आज भी यह वही है? –