właśnie czytając ten post "When is IHttpModule.Dispose method called?" Znalazłem toPytanie dotyczące IHttpModule.Dispose i Application_End
„Metoda utylizować wykonuje żadnej ostatecznej prac porządkowych przed usunięciem modułu z rurociągu wykonania.”
co oznaczałoby, że jest aplikacją.
Jest OK. W każdym razie, próbując osobiście, odkryłem, że używanie metody IHttpModule Dispose i programu obsługi zdarzeń dla zdarzenia Application.Disposed powinno być prawie takie samo. Pierwszy występuje zaraz po drugim.
Nie wydaje mi się, że jest to poprawne w 100%, tzn. Po IHttpModule.Dispose nie zawsze następuje pozycja Application_End. Załóżmy, że mam wiele wystąpień obiektu Application uruchomionego dla mojej aplikacji, co oznacza, że każda instancja obiektu aplikacji będzie zawierała poszczególne instancje modułów. Przyjmijmy teraz, że nadejdzie pora, gdy Pula aplikacji zostanie pełna z instancjami aplikacji, co się wtedy stanie? Czy nie będzie początkowo usuwać instancji aplikacji jeden po drugim, a w łańcuchu moduły w instancji aplikacji zostaną usunięte. Teraz ta likwidacja modułu nie oznacza, że Application_End będzie strzelał po tym. Aplikacja wciąż działa. Czy mam rację?
dzięki za odpowiedź! Jeszcze jedno ... czy to prawda, że gdy pula aplikacji jest pełna z instancjami obiektów aplikacji, zacznie je czyścić? lub pula aplikacji zostanie ponownie uruchomiona? –
Zależy od tego, jak czuje się IIS w dniu pytania. :) .... Jeśli proces roboczy trafi w stan recyklingu (zgodnie z właściwościami puli aplikacji w konfiguracji IIS), cały proces zostanie zrestartowany i pojawi się nowy pakiet w3wp. Bardziej prawdopodobne jest jednak, że podczas normalnego użytkowania (ponieważ restartowanie całej puli aplikacji jest drogie), pula aplikacji utworzy i usunie wystąpienia HttpApplication. Zgodnie z konfiguracją usługi IIS mogą również hostować wiele domen aplikacji w jednym procesie roboczym puli aplikacji, a także mogą tworzyć ogród sieci obejmujący wiele procesów związanych z kolejnością, uruchomionych w tym samym czasie dla puli aplikacji. – Jeff
Dlaczego ktoś zgodził się z tą odpowiedzią? – Jeff