2009-08-27 9 views
9

मैं AppDomainUnloadedException का निदान और न्यूनतम कैसे कर सकता हूं?NUnit परीक्षण PLINQ कोड के बाद मैं AppDomainUnloadedException को कैसे रोक सकता हूं?

NUnit 2.5.2 लगातार PINQ से जुड़े लंबे समय (> 10s) परीक्षणों के बाद AppDomainUnloadedException फेंकता है।

जुलाई 2008 में वापस, Stephen Toub said:

हाँ, CTP में अनुसूचक धागा संभाल नहीं करता है बहुत अच्छी तरह से है जो अक्सर प्रक्रिया का कारण बनता है रोकता है जब एक जीवित अनुसूचक एक डोमेन में मौजूद है दुर्घटना शट डाउन (चूंकि ऐपडॉमेन बंद हो गया है, उस डोमेन में स्टैक फ्रेम के साथ सभी धागे पर थ्रेड एबॉर्ट्स का कारण बनता है)। हम भविष्य में रिलीज के लिए को कड़ी मेहनत करने के लिए काम कर रहे हैं।

मैं कोशिश की है कई समाधान, सहित:

  • एक अलग विधि में परीक्षण चल रहा है एक NUnit तर्क
  • nunit-console.exe.config से legacyUnhandledAppDomainPolicy तत्व निकाला जा रहा है के रूप में /domain:None निर्दिष्ट आवारा संदर्भ
  • खत्म करने के लिए

मैं न्यूटिट कोपर बैकग्रेड नहीं कर सकता, क्योंकि मुझे अपने पैरामीट्रिक परीक्षण तेज करने के लिए PLINQ की आवश्यकता है। समस्या के बिना न्यूटिट के संस्करण पैरामीट्रिक परीक्षणों का समर्थन नहीं करते हैं।

+0

संबंधित समस्या के लिए http://stackoverflow.com/questions/561402/cassini-webserver-webdev-nunit-and-appdomainunloadedexception भी देखें। यह संभवतः https://bugs.launchpad.net/nunitv2/+bug/423611 –

+1

अक्सर ऐसी समस्या होती है जो ऑब्जेक्ट्स के गलत निपटान के कारण तत्काल परीक्षण होता है, एक परीक्षण स्टार्टअप के दौरान, देखें कि क्या आप सभी संसाधनों को सही तरीके से निपट रहे हैं या नहीं – sll

उत्तर

1

this PLINQ Task Manager thread on the MSDN forums के अनुसार, आपकी समस्या हल होनी चाहिए; .NET ढांचे की नवीनतम रिलीज के साथ, PLINQ के कार्य प्रबंधक को AppDomain अनलोड पर साफ़ रूप से बंद करना है।

क्या आप अभी भी .NET 4 या 4.5 के साथ इस समस्या में चल रहे हैं?

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