के लिए सीपीयू और मेमोरी कैप मैं एक एपडोमेन में एक एक्सई होस्ट करना चाहता हूं और इसे एक सीपीयू और मेमोरी कैप असाइन करना चाहता हूं ताकि यह असाइन प्रोसेसिंग पावर से अधिक उपयोग न करे। क्या यह करना संभव है और कैसे?एपडोमेन
एपडोमेन
उत्तर
यहां तक कि विंडोज़ प्रदर्शन मॉनीटर आपको एपडोमेन द्वारा सीपीयू उपयोग देखने की अनुमति नहीं देते हैं - चूंकि ऐपडॉमेन्स सीएलआर की तार्किक संरचनाएं हैं और ओएस द्वारा ज्ञात नहीं हैं, केवल सीपीयू उपयोग ट्रैकिंग प्रक्रिया स्तर पर है - मैं चौंक जाएगा अगर ऐसा कुछ सीमित करने का कोई तरीका है जिसे आप मॉनीटर भी नहीं कर सकते हैं।
ऐसा करने के लिए आपका कारण क्या है? आप अपने आवेदन को उपलब्ध सभी संसाधनों का उपयोग क्यों नहीं करना चाहेंगे? यदि यह सुनिश्चित करने का मामला है कि अन्य प्रक्रियाओं के चलने के लिए पर्याप्त ओवरहेड है, तो क्या आप केवल धागे की प्राथमिकता को कम नहीं कर सकते हैं और विंडोज शेड्यूलर को इसे समझने दें?
इस तरह से कुछ करने के लिए मुझे एकमात्र तरीका हाइपरवी (या समान उत्पाद) का उपयोग करना और विभिन्न अनुप्रयोगों में अपने अनुप्रयोगों को विभाजित करना है। लेकिन यह वास्तव में एक सस्ता या सरल समाधान नहीं है।
आप अधिकतम स्मृति सीधे टोपी नहीं कर सकते में इस आवश्यकता के लिए एक समाधान है, के रूप में तक मुझे पता है की तरह।
हालांकि, पर .NET 4 से, स्मृति वर्तमान में एक AppDomain
द्वारा आवंटित AppDomain.MonitoringSurvivedMemorySize
संपत्ति में उपलब्ध AppDomain.MonitoringIsEnabled
true
पर सेट है है। आप आवंटन की निगरानी के लिए एक वॉचडॉग थ्रेड को स्पिन कर सकते हैं।
लिंक मरने के मामले में कृपया अपने उत्तर पर विस्तृत करें। –