Pytania otagowane jako dispose

Wykonuje zdefiniowane przez aplikację zadania związane ze zwalnianiem, zwalnianiem lub resetowaniem niezarządzanych zasobów


15
Finalizacja kontra usuwanie
Dlaczego niektórzy ludzie używają Finalizetej Disposemetody? W jakich sytuacjach zastosowałbyś Finalizemetodę zamiast Disposemetody i odwrotnie?
215 c#  dispose 

10
Czy powinienem usunąć () DataSet i DataTable?
Zarówno DataSet, jak i DataTable implementują IDisposable, więc zgodnie z tradycyjnymi najlepszymi praktykami powinienem wywołać ich metody Dispose (). Jednak z tego, co przeczytałem do tej pory, DataSet i DataTable nie mają w rzeczywistości żadnych niezarządzanych zasobów, więc Dispose () tak naprawdę niewiele robi. Ponadto nie mogę po prostu użyć, …



9
Czy Garbage Collector zadzwoni do IDisposable.Dispose dla mnie?
Wzorzec .NET IDisposable oznacza, że jeśli napiszesz finalizator i zaimplementujesz IDisposable, finalizator musi jawnie wywołać Dispose. Jest to logiczne i zawsze to robiłem w rzadkich sytuacjach, gdy finalizator jest uzasadniony. Jednak co się stanie, jeśli po prostu to zrobię: class Foo : IDisposable { public void Dispose(){ CloseSomeHandle(); } } …

3
Czy dopuszczalne jest niewywoływanie metody Dispose () na obiekcie zadania TPL?
Chcę uruchomić zadanie w wątku w tle. Nie chcę czekać na zakończenie zadań. W .net 3.5 zrobiłbym to: ThreadPool.QueueUserWorkItem(d => { DoSomething(); }); W .net 4 TPL jest sugerowanym sposobem. Typowy zalecany wzór, który widziałem, to: Task.Factory.StartNew(() => { DoSomething(); }); Jednak StartNew()metoda zwraca Taskobiekt, który implementuje IDisposable. Wydaje się, …

7
Usuwanie formantów użytkownika WPF
Utworzyłem niestandardową kontrolkę użytkownika WPF, która jest przeznaczona do użytku przez inną firmę. Mój formant ma prywatnego członka, który jest jednorazowy i chciałbym mieć pewność, że jego metoda usuwania będzie zawsze wywoływana po zamknięciu zawierającego okno / aplikacji. Jednak UserControl nie jest jednorazowy. Próbowałem zaimplementować interfejs IDisposable i subskrybować zdarzenie …
119 c#  .net  wpf  user-controls  dispose 

5
Czy istnieje sposób na zamknięcie StreamWriter bez zamykania jego BaseStream?
Moim głównym problemem jest to, że kiedy usingwywołuje Disposea StreamWriter, usuwa również BaseStream(ten sam problem z Close). Mam obejście tego problemu, ale jak widzisz, wymaga to skopiowania strumienia. Czy można to zrobić bez kopiowania strumienia? Ma to na celu pobranie zawartości ciągu (pierwotnie odczytanego z bazy danych) do strumienia, aby …
117 c#  stream  dispose 


7
Jaka jest różnica między używaniem IDisposable a destructor w C #?
Kiedy powinienem zaimplementować IDispose w klasie, a nie w destruktorze? Przeczytałem ten artykuł , ale nadal nie rozumiem. Zakładam, że jeśli zaimplementuję IDispose na obiekcie, mogę wyraźnie go „zniszczyć”, zamiast czekać, aż zrobi to garbage collector. Czy to jest poprawne? Czy to oznacza, że ​​zawsze powinienem jawnie wywoływać metodę Dispose …
101 c#  .net  dispose  destructor 

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.