के प्रदर्शन को बढ़ा सकता है मेरे पास मेरे कर्मचारी पृष्ठ में Response.Redirect
है। यह वेतन पृष्ठ पर रीडायरेक्ट करता है।"एंड्रॉस्पॉन्स" एएसपी.Net पृष्ठ
Response.Redirect ("Salary.aspx");
यह ठीक काम कर रहा था जब तक कि मैंने नीचे अपवाद हैंडलिंग को जोड़ा नहीं। ।
try
{
Response.Redirect ("Salary.aspx");
}
catch(Exception ex)
{
//MyLog();
throw new Exception();
}
//Remaining code in event handler
यह कोई नया अपवाद कह "थ्रेड निरस्त किया जा रहा था" की वजह से मुझे पता चला है कि इस endResponse
रीडायरेक्ट के लिए के रूप में झूठी स्थापित करने से बचा जा सकता आया
Response.Redirect(url, false);
Context.ApplicationInstance.CompleteRequest();
नया अपवाद की व्याख्या।: यह हमेशा अपवाद फेंकता है लेकिन ढांचे से संभाला जाता है। चूंकि मैंने कोशिश की है .. देखो, इसे वहां पकड़ा गया था (और मैं एक नया अपवाद फेंक रहा हूं)
नोट: CompleteRequest
और HTTP फ़िल्टर और मॉड्यूल बाईपास करता है, लेकिन यह नहीं करता है टी बापा नहीं वर्तमान पृष्ठ जीवन चक्र
नोट: Response.Redirect वर्तमान पृष्ठ की अंतिम प्रसंस्करण के लिए इस अपवाद को फेंक दें। एएसपी .NET स्वयं इस अपवाद को संभालता है और प्रसंस्करण जारी रखने के लिए ResetAbort
पर कॉल करता है।
प्रश्न
- चाहे "के रूप में झूठी endResponse सेटिंग" अपवाद के बाद से वृद्धि प्रदर्शन नहीं फेंका जाता है कर सकते हैं?
- चाहे "अंतराल को गलत के रूप में सेट करना" प्रदर्शन पृष्ठ जीवन चक्र घटनाओं को समाप्त नहीं कर सकता है?
ख़तरा
- आप
false
रूप endResponse सेट करते हैं, eventhandler में शेष कोड निष्पादित किया जाएगा। इसलिए हमेंif
शेष कोड की जांच करने की आवश्यकता है (जांचें: अगर पुनर्निर्देशन मानदंड पूरा नहीं हुआ था)।
संदर्भ
- Why Response.Redirect causes System.Threading.ThreadAbortException?
- ASP.NET exception "Thread was being aborted" causes method to exit
'प्रदर्शन' को विभिन्न पहलुओं से माप लिया जा सकता है !!! आप वास्तव में क्या उम्मीद कर रहे हैं? –
@huMptydu निम्नलिखित दृष्टिकोण से खाली प्रदर्शन 1) पृष्ठ प्रतिक्रिया समय 2) मेमोरी उपयोग – Lijo
इसके अलावा, चूंकि आप अपनी वेबसाइट के प्रदर्शन में सुधार करने की कोशिश कर रहे हैं, यह [आलेख] (http://msdn.microsoft.com/en-us/magazine/cc163854 .aspx) कुछ जानकारी भी दे सकता है –