👉Sígueme en Facebook bit.ly/3sQSKcY 👉Échale un ojo a mis CURSOS EN UDEMY: 💓Aprende a programar desde CERO con C# -> bit.ly/3bF3p2d 💚¿Lo quieres al MENOR PRECIO posible? Suscríbete, pide tu cupón en un comentario y te lo haré llegar. 💓Aprende lógica de programación -> bit.ly/3mgRApf 💚GRATIS 😲
Amigo, gran video. Una duda si usamos using SqlConnection connection= new SqlConnection(); justo como tu lo mostraste sin definir un bloque con las llaves { } que pasaría si existiera una exception? tambien se liberaria correctamente el objecto connection que definimos?
@@erikomarmontescastro100 Es correcto, la instrucción using asegura que se llama al método Dispose (o DisposeAsync) aunque se produzca una excepción en el bloque using, con o sin llaves.
Es correcto, seria una forma. La otra es solo recordar que las clases que necesitan usar Dispose es porque usan memoria no administrada, como bases de datos, archivos, etc....
@@Jel.Awesh.M Sí, aunque ambos terminen siendo memoria física, se maneja de diferente forma. La memoria administrada está controlada por un recolector (Garbage Collector), de forma que cuando obtienes una variable a cualquier cosa del NET el compactador podrá mover y eliminar lo que quiera. La memoria no administrada es la memoria normal, hay que asginarla y no olvidarse de liberarla, son direcciones fijas de memoria, internamente es lo que maneja los streams que mencionas por ejemplo.
👉Sígueme en Facebook bit.ly/3sQSKcY
👉Échale un ojo a mis CURSOS EN UDEMY:
💓Aprende a programar desde CERO con C# -> bit.ly/3bF3p2d
💚¿Lo quieres al MENOR PRECIO posible? Suscríbete, pide tu cupón en un comentario y te lo haré llegar.
💓Aprende lógica de programación -> bit.ly/3mgRApf
💚GRATIS 😲
Amigo, gran video. Una duda si usamos using SqlConnection connection= new SqlConnection(); justo como tu lo mostraste sin definir un bloque con las llaves { } que pasaría si existiera una exception? tambien se liberaria correctamente el objecto connection que definimos?
por cierto me acabo de suscribir, explicas muy bien
@@erikomarmontescastro100 Es correcto, la instrucción using asegura que se llama al método Dispose (o DisposeAsync) aunque se produzca una excepción en el bloque using, con o sin llaves.
@@erikomarmontescastro100 cuando usamos llaves y cuando no?
gracias, muy bueno.
Gracias a ti por seguir mi canal.
Excelente!
muy bueno!!!!
Entonces, podría decirse que cada vez que tengamos duda de usarlo o no, ¿tendríamos que ver is implementa IDisposable?
Es correcto, seria una forma. La otra es solo recordar que las clases que necesitan usar Dispose es porque usan memoria no administrada, como bases de datos, archivos, etc....
@@ConsejosCSharp ¿A qué te referís con memoria no administrada? Entiendo que los archivo y BD lo sean ¿pero qué hay de un StreamWriter o StreamReader?
@@Jel.Awesh.M Sí, aunque ambos terminen siendo memoria física, se maneja de diferente forma. La memoria administrada está controlada por un recolector (Garbage Collector), de forma que cuando obtienes una variable a cualquier cosa del NET el compactador podrá mover y eliminar lo que quiera.
La memoria no administrada es la memoria normal, hay que asginarla y no
olvidarse de liberarla, son direcciones fijas de memoria, internamente es lo que maneja los streams que mencionas por ejemplo.
@@ConsejosCSharp Entiendo, gracias por la respuesta.
⭐⭐⭐⭐⭐
a mi me dijeron que posia usar using para usar una conexion de base datos, y cerrarla para no usar el .close
En realidad no tanto por el Close() sino por el Dispose(). Ya que al conectarnos a bases de datos usamos objetos no administrados.