अलग-अलग व्याख्या की गई, आंखों की तुलना में इस प्रश्न की अधिक जटिलता है।
निश्चित Disposed
कॉल किया जाता है, लेकिन क्या यह कुछ भी करता है? निर्भर करता है।
यदि आपने किसी पृष्ठ या नियंत्रण की Disposed
ईवेंट की सदस्यता ली है और इसे प्रति-अनुरोध कहा जा रहा है, तो आप आश्चर्यचकित हो सकते हैं। हाँ, तकनीकी तौर पर ProcessRequestCleanup()
यह तुम्हारे लिए कहता है, लेकिन यह वास्तव में क्या कहता है पर एक नजर है:
public virtual void Dispose()
{
IContainer service = null;
if (this.Site != null)
{
service = (IContainer) this.Site.GetService(typeof(IContainer));
if (service != null)
{
service.Remove(this);
EventHandler handler = this.Events[EventDisposed] as EventHandler;
if (handler != null)
{
handler(this, EventArgs.Empty);
}
}
}
if (this._occasionalFields != null)
{
this._occasionalFields.Dispose();
}
}
एक डिजाइन सतह के बिना, इस कोड को अनिवार्य रूप से कुछ भी नहीं रन-टाइम में जिसका अर्थ है अपने Disposed
संचालकों पर अमल कभी नहीं होगा करता है,।
पाठ प्रति अनुरोध निष्पादित करने के लिए Disposed
हैंडलर पर भरोसा नहीं करता है। आप कुछ निष्पादन की गारंटी के लिए इसे ओवरराइड कर सकते हैं, लेकिन Unloaded
एक अधिक सुरक्षित शर्त है।
थक्स डंकन, यह मैंने देखा है कि पहला वास्तविक सबूत है। –