मेरे पास एक निर्धारित कार्य है जो बहुत CPU- और IO- गहन है, और चलाने में लगभग चार घंटे लगते हैं (स्रोत कोड का निर्माण, यदि आप घुमावदार हैं)। कार्य एक पॉवर्सशेल स्क्रिप्ट है जो अपना काम करने के लिए विभिन्न उप-प्रक्रियाओं को जन्म देती है। जब मैं एक ही प्रक्रिया को पॉवर्सशेल प्रॉम्प्ट से एक ही उपयोगकर्ता खाते के रूप में अंतःक्रियात्मक रूप से चलाता हूं, तो यह लगभग ढाई घंटे में चलती है। कार्य Windows Server 2008 R2 पर चल रहा है।
मैं जानना चाहता हूं कि एक निर्धारित कार्य के रूप में चलने में इतना समय क्यों लगता है - एक घंटे से अधिक समय तक। एक बात मैंने देखी कि टास्क शेड्यूलर नीचे-सामान्य प्राथमिकता पर चलता है, इसलिए जब मेरा कार्य शुरू होता है, तो यह उसी निचली प्राथमिकता को प्राप्त करता है। हालाँकि, मैंने Powershell प्रक्रिया प्राथमिकता को वापस सामान्य पर सेट करने के लिए स्क्रिप्ट को अपडेट किया है, और यह अभी भी लंबे समय के रूप में लेता है।
किसी को भी इस बात का अंदाजा है कि दोनों परिदृश्यों के बीच क्या अंतर हो सकता है? मैंने प्रोसेसर और आईओ लोड में अंतर को खारिज कर दिया है - यह कार्य केवल एक चीज है जिसके लिए सिस्टम का उपयोग किया जाता है, इसलिए कुछ और नहीं चल रहा है जो संसाधनों के लिए प्रतिस्पर्धा कर सकता है।