मेरे पास सर्वर 2008 R2 + IIS 7.5 पर चल रहे ASP.NET अनुप्रयोग में कुछ कोड था। जब भी मैंने एक विशेष पृष्ठ लोड किया, तो यह हमेशा के लिए लटका होगा और आईआईएस को 100% सीपीयू उपयोग में भेज देगा। अंत में मैंने समस्या को ट्रैक किया।.NET में स्टैक ओवरफ़्लो IIS को 100% CPU उपयोग भेजता है - क्यों नहीं StackOverflowException?
public string Comments
{
get { return this.Comments; }
}
ओप्स - return this.Photo.Comments
होना चाहिए था। तो, मेरा सवाल यह है कि .NET ने StackOverflowException क्यों नहीं बनाया, बल्कि इसके बजाय IIS को 100% CPU पर चलने से कहीं अधिक समय तक चलने दें। .NET के साथ अपने अनुभव प्रोग्रामिंग में, ऊपर की तरह कुछ करने पर StackOverflowException प्राप्त करने में सेकंड या उससे कम समय लगता है। तो आईआईएस पर लगभग 30 मिनट तक यह अभी भी कैसे चल सकता है?
वर्कर प्रोसेस शायद मर था और ऑपरेशन पुन: प्रयास? मैंने गलती से दूसरे दिन एक एसओ कोड किया, और उसने एएसपी.NET (मेरे मामले में शेयरपॉइंट) को बहुत जल्दी मार दिया। – leppie
के बाद से .net 4 पूंछ प्रत्यावर्तन का अनुकूलन, यह एक पाश के लिए फिर से लिखा गया हो सकता है। आप आईएल को देखकर इसे सत्यापित कर सकते हैं। – Heinzi
क्या यह एएसपी.नेट 2.0 या 4.0 है? – Kev