Preguntas etiquetadas con idisposable

IDisposable es una interfaz dentro de la biblioteca de clases base (BCL) de Microsoft .NET Framework. Su objetivo es proporcionar un método genérico y determinista de liberar recursos no administrados dentro del código de la aplicación .NET.

19
Uso adecuado de la interfaz IDisposable
Sé por leer la documentación de Microsoft que el uso "primario" de la IDisposableinterfaz es limpiar recursos no administrados. Para mí, "no administrado" significa cosas como conexiones de bases de datos, sockets, manejadores de ventanas, etc. Pero, he visto código donde el Dispose()método se implementa para liberar recursos administrados , …

13
Uso del método Finalizar / Eliminar en C #
C # 2008 He estado trabajando en esto por un tiempo, y todavía estoy confundido sobre el uso de los métodos de finalizar y desechar en el código. Mis preguntas están abajo: Sé que solo necesitamos un finalizador mientras desechamos recursos no administrados. Sin embargo, si hay recursos administrados que …

12
¿HttpClient y HttpClientHandler deben eliminarse entre solicitudes?
System.Net.Http.HttpClient y System.Net.Http.HttpClientHandler en .NET Framework 4.5 implementan IDisposable (a través de System.Net.Http.HttpMessageInvoker ). La usingdocumentación de la declaración dice: Como regla general, cuando usa un objeto IDisposable, debe declararlo e instanciarlo en una declaración de uso. Esta respuesta usa este patrón: var baseAddress = new Uri("http://example.com"); var cookieContainer = …


10
¿Debo desechar () DataSet y DataTable?
DataSet y DataTable implementan IDisposable, por lo que, según las mejores prácticas convencionales, debería llamar a sus métodos Dispose (). Sin embargo, por lo que he leído hasta ahora, DataSet y DataTable en realidad no tienen recursos no administrados, por lo que Dispose () en realidad no hace mucho. Además, …





9
¿El recolector de basura llamará a IDisposable?
El patrón .NET IDisposable implica que si escribe un finalizador e implementa IDisposable, su finalizador debe llamar explícitamente a Dispose. Esto es lógico, y es lo que siempre he hecho en las raras situaciones en las que se justifica un finalizador. Sin embargo, qué sucede si solo hago esto: class …



Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.