संक्षिप्त उत्तर नहीं है, आप मज़बूती से ngen (और आप कोशिश नहीं करनी चाहिए), एकमात्र सुसंगत / उपयोगी विकल्प जो मुझे मिला वह उसे पूरा करने के लिए मजबूर कर रहा था और इसे पृष्ठभूमि में दुबकना नहीं छोड़ रहा था।
यदि आपकी बैटरी पर कुछ सीपीयू चक्रों को बचाने की कोशिश हो रही है (या मेरे मामले में एक सर्वर को विंडोज अपडेट के बाद सेवा में लौटने के बाद इसे चलाने से रोकना है) तो आपका सबसे अच्छा विकल्प है कि आप अपने आप को चलाने के लिए ngen को मजबूर करें। एक डेस्कटॉप पीसी के लिए, 2 विकल्प दिमाग में आते हैं:
अपने डेस्कटॉप पर .bat या .ps1 फ़ाइल को नीचे उपयुक्त ngen कमांड के साथ बनाएं - बस डबल क्लिक करें और अपने अनप्लग से पहले ngen के बंद होने की प्रतीक्षा करें। यदि आप इसके बजाय अपने विंडोज फ़ोल्डर में स्क्रिप्ट बनाते हैं और इसे अपने डेस्कटॉप पर शॉर्टकट करते हैं, तो आप इसे आवश्यक रूप से निष्पादित करने के लिए कमांड या पॉवर्सशेल प्रॉम्प्ट या रन डायलॉग का उपयोग भी कर सकते हैं (अपडेट से पहले / अनप्लग करने से पहले)।
एक अन्य विकल्प जो काम करना चाहिए, वह उपरोक्त स्क्रिप्ट को निष्पादित करने के लिए एक निर्धारित कार्य का उपयोग करना है। एक व्यवस्थापक के रूप में, उपयोगकर्ता पर लॉग ऑन किए बिना, इसे स्टार्टअप पर चलाएं। यदि आपके लैपटॉप को रातोंरात अपडेट इंस्टॉल करने की अनुमति है और यह रीबूट कर सकता है तो इसे अच्छी तरह से काम करना चाहिए।
Ngen चलाने के लिए आपको केवल निम्न कमांड में से एक की आवश्यकता है, अपने सिस्टम के लिए पहले / सबसे उपयुक्त विकल्प का उपयोग करें:
.Net 4 या 64 बिट पर बेहतर
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\ngen.exe executeQueuedItems
.Net 4 या 32 बिट पर बेहतर
C:\Windows\Microsoft.NET\Framework\v4.0.30319\ngen.exe executeQueuedItems
.Net 3 या 64bit पर कम
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\ngen.exe executeQueuedItems
.Net 3 या 32bit पर कम
C:\Windows\Microsoft.NET\Framework\v2.0.50727\ngen.exe executeQueuedItems
नीचे कोई कतार वस्तुओं नहीं होने पर आपको न्यूनतम उत्पादन ngen से मिलता है:
PS C:\Users\Administrator> C:\Windows\Microsoft.NET\Framework64\v4.0.30319\ngen.exe executeQueuedItems
Microsoft (R) CLR Native Image Generator - Version 4.6.1586.0
Copyright (c) Microsoft Corporation. All rights reserved.
All compilation targets are up to date.
जब ngen.exe को executeQueuedItems
इसके साथ चलाया जाता है, तो यह सभी लंबित कार्यों को जल्द से जल्द करने के लिए मजबूर करेगा। आम तौर पर ngen एक कम प्राथमिकता वाली बैकग्राउंड थ्रेड (और जाहिर तौर पर सिर्फ रैंडम पर शुरू होता है) पर चलता है, यह विचार सीपीयू की अन्य प्रक्रियाओं को नहीं करना चाहिए - हालांकि यह हमेशा काम नहीं करता है। अंतःक्रियात्मक रूप से रनिंग नेगन को पृष्ठभूमि में चलाने की तुलना में तेज है - लेकिन यह प्रदर्शन को अधिक प्रभावित करेगा। कितना समय लगता है यह आपके हार्डवेयर पर निर्भर करता है और कितने / किन देशी चित्रों को फिर से बनाने की आवश्यकता है।