Liberar recursos de manera natural en C# con Dispose, IDisposable y using

Поделиться
HTML-код
  • Опубликовано: 24 янв 2025

Комментарии • 28

  • @hdeleonnet
    @hdeleonnet  4 года назад +12

    Si te ha gustado el video me puedes apoyar con un like y compartiéndolo en tus redes sociales, ¡Muchas gracias!

  • @EcoDev-Solutions
    @EcoDev-Solutions 9 месяцев назад

    Yo lo uso en las conexiones y es una maravilla. No hay necesidad de cerrar de forma explicita la conexión ya que esta interfaz lo hace de forma implicita.
    Gracias por tus buenos aportes.

  • @flopente2783
    @flopente2783 2 года назад

    muy claro y corto, gracias

  • @gastoncho2002
    @gastoncho2002 4 года назад +1

    Gracias Héctor exelente explicación!! Abrazo desde Argentina

  • @ijeanpierrebp
    @ijeanpierrebp Год назад

    Al fin lo pude entender, gracias!

  •  4 года назад +1

    Amigo gracias por esos vídeos, cada vez mas información para mejorar nuestros códigos.

  • @onlyjobhard
    @onlyjobhard 4 года назад +2

    Excelente video amigo.

  • @karinalejandrolugogutierre5395
    @karinalejandrolugogutierre5395 3 года назад

    Muy buen video, lo entendí clarito.

  • @timbossx6846
    @timbossx6846 Год назад +1

    Mejor que la explicación del Indio

  • @izakntun
    @izakntun 4 года назад +1

    Buenísimo!!!

  • @edinvega2321
    @edinvega2321 4 года назад

    Justo la explicación que buscaba gracias 🤟

  • @alexishernandez-qp4gr
    @alexishernandez-qp4gr 4 года назад

    como aplicaria esto por ejemplo en net core al momento de hacer la ingenieria inversa te crea la clase context, esta clase ya hereda la funcion IDisposable? o debo implementarla aparte?

    • @hdeleonnet
      @hdeleonnet  4 года назад

      dale f18 en dbcontext y veras que tiene un : IDisposable

  • @cinodio-g3895
    @cinodio-g3895 3 года назад +1

    Gracias por la info!
    Estoy con un proyecto MVC, y me surgen estas dudas:
    1- Si uso Task, ejecuto algo en otro hilo, el dispose me lo elimina o cancela?
    2- El dispose me elimina lo cargado en Session[ ] ?

  • @ronaldleyva9054
    @ronaldleyva9054 4 года назад

    Hola Héctor increíbles tus vídeos son de mucha ayuda, tienes alguno para encriptar y desencriptar parámetros que se envían en una URL en MVC 5 ?
    Saludos desde Acapulco.

  • @hectorramos5632
    @hectorramos5632 2 года назад

    Hola tocayo, que buenos videos haces. Tengo una consulta, tengo un archivo zip el cual lo tengo en mis recursos del servidor, cómo podría eliminar esa ruta que lo tengo en un objeto si ya está siendo utilizado

  • @RandomVideos-bq2xn
    @RandomVideos-bq2xn 4 года назад +1

    Excelente como siempre mi estimado Hector.
    Tengo una consulta tienes tutoriales sobre lo que son los servicios en windows, yo había hecho un pequeño servicio en c# con su instalador para windows pero ya no recuerdo como hacerlos tendrás algo en tu canal. Gracias.

    • @hdeleonnet
      @hdeleonnet  4 года назад +1

      que tal, no tengo un video, pero lo pondré en la lista

    • @RandomVideos-bq2xn
      @RandomVideos-bq2xn 4 года назад +1

      @@hdeleonnet Excelente gracias, esos servicios son interesantes son como tareas que le programas al windows a cierta hora has esto o aquello como un job en sql server. Gracias

  • @ing.sebastianfernandezverg2245
    @ing.sebastianfernandezverg2245 2 года назад

    Que tal Hector, muy buenos aportes!!, me quedo claro para que sirve, Pero, me surgio una duda sobre cuando implementar la interfaz y cuando usar la que ya tiene pode default heredada para el uso de TextWriter,
    para darnos una idea de lo que hablo...
    StreamWriter File = new StreamWriter(Path);
    File.WriteLine(text);
    // podemos usa este para liberar los recursos de StreamWriter
    File.Close();
    //o en su defecto este, que libera todos los recursos usados de la clase TextWriter
    File.Dispose();
    corrijeme si me equivoco : La interfaz IDisposable se puede implementar en cualquier objeto del cual se quiera liberar los recursos y si este no es heredado de una clase que ya lo tenga heredado de manera implícita, se pueda implementar trabajando en conjunto con el scope using.
    Saludos cordiales.

    • @ale_gallardo
      @ale_gallardo Год назад

      En la documentación busca de dónde hereda la clase en cuestión, puesto que hay muchas clases que por herencia incorporan en idisposable

  • @danielfragoso8195
    @danielfragoso8195 4 года назад

    Tengo un detalle similar al momento de que habro un archivo PDF solo una vez puedo abrir. La segunda vez me dice que está usado por otro proceso. Esto me ayudaría verdad.? Saludos y muy buen video.

    • @hdeleonnet
      @hdeleonnet  4 года назад +1

      claro, solo en tu metodo dispose cierralo con lo que estes utilizando, debería tener un metodo close

    • @danielfragoso8195
      @danielfragoso8195 4 года назад

      @@hdeleonnet muchas gracias. Una duda y disculpa, tendrás algún vídeo donde utilices SqlDependy con .net o .net core creo que detecta cambios en una tabla.

  • @ALEXCOCACOLASE
    @ALEXCOCACOLASE 3 года назад +1

    DUDA:
    Yo para extraer datos con EF siempre llamo a mi contexto con un using así:
    using(EjemploDb dbContext = new EjemploDb())
    {
    var datos = dbContext.tabla.Where(n => n ==2);
    }
    La verdad lo aprendí así por ti pero nunca he entendí porque se hace así, ahora con la explicación de este video mi pregunta es:
    ¿Se hace así porque EF implementa IDisposable?

    • @hdeleonnet
      @hdeleonnet  3 года назад +1

      así es, al igual que abrir un archivo por ejemplo, eso hace que el programador se ahorre invocar Dispose();

  • @yuutablee5588
    @yuutablee5588 4 года назад

    esta buenísimo, pero como debería hacerlo si adicionalmente tengo una imagen como atributo? como logro liberar la variable que genera la imagen? *De antemano muchas gracias*

    • @ale_gallardo
      @ale_gallardo Год назад

      Cada clase tiene un solo Disposable, tendría que tener los dos atributos bajo lo cual procedería a liberar ambos