Metoda finalize i Dispose - czy oni usuwaja obiekt czy zasoby po nich

0

Czy metoda finalize i Dispose usuwają obiekt na którym je wywołujemy czy tylko pozostałości po tych obiektach ?

1

obie metody:

  1. nie usuwaja obiektu
  2. moga zwalniac zasoby ale zalezy to od implementacji
    roznica jest taka ze finalizer jest niedeterministycznie wywolywany przez garbage collector a dispose wywolujesz sam (explicite lub jakims lukrem skladniowym typu using albo foreach)
0

Czyli "sprzątają" po sobie ?

1

czyli zalezy jak je zaimplementujesz albo jak ktos zaimplementowal. mozesz np zrobic metode dispose ktora bedzie obliczala liczbe pi z dokladnoscia do milionowego miejsca po przecinku. albo finalizer ktory bedzie wlaczal filmik na jutubie ;)
generalnie jak klasa ma metode dispose to powinienes jej uzyc jak skonczysz prace z obiektem. finalizer zostaw w spokoju

0

A jak to jest z html Helperami, czy oni też po wywołaniu metody tylko sprzątają obiekty czy całkowicie je usuwają. Podaje przykład, blok using czyli po wyjściu z bloku using wywoła się metoda Dispose. Czy wtedy obiekt, który był w bloku using całkowicie się usuwa ?

@using (Html.BeginForm())
{

}

1 użytkowników online, w tym zalogowanych: 0, gości: 1