creo que la gente en internet y sobre todo en RUclips necesita cerveza porque el resultado que genialidad para explicar algo que le dan tanta vuelta y por fin lo entendí
la recomendación es que async/await sean utilizados en operaciones de I/O (web services, bases de datos, networking, file system, etc) para que el procesador se libere y pueda ejecutar código mientras espera la respuesta del task. Otra ventaja es que en métodos anidados, si ponemos un await y la tarea aún sigue ejecutándose, en el método padre se puede seguir ejecutando código hasta que se encuentra un nuevo await
la parte "en el método padre", supongo que te refieres al caller o el método donde llamamos a resultados asíncronos, en este caso no continúa ejecutándose (a menos que no uses el `await` delante del método asíncrono que estás llamando desde el caller), si usamos await por delante, el caller espera el resultado, la diferencia en este caso reside en el hecho de que nuestro caller "se libera", es decir nuestro caller no se bloquea esperando el resultado del await, solo se "encola" la tarea hasta que el resultado del await llegue, liberando al CPU para que pueda hacer otras tareas, una vez el resultado del await llegue, nuestro proceso principal (del caller) se reanuda, continuando la ejecución regular, como si de un programa síncrono se tratara. Lo importante a notar acá es que ya no bloqueamos a nuestro hilo principal cuando estamos esperando por resultados I/O sino se pone en pausa y notifica al procesador que se libere hasta que `await` nos avise que ya podemos reanudar nuestra ejecución principal, de esta forma nuestro procesador tendrá tiempo para hacer otras cosas. Una analogía fácil sería que antes hacíamos colas para que nos atiendan (las personas por delante eran nuestros procesos I/O) pero ahora tu puedes sacar una cita y simplemente vas a la hora que te toca en lugar de estar esperando en la cola (en este caso te evitas el tiempo de hacer cola y en su lugar puedes hacer otras cosas de tu día a día)
Saludos buen video, anteriormente programe en Windows form pero deje durante unos años de programar ahora que regreso a c# y aprender asp.net eh encontrado muchas cosas nuevas e interesante y tus videos me están sirviendo.
Excelente, muy bien explicado. Me gustan tus publicaciones. Como programadores hay conceptos que para entenderlos te pueden llevar semanas de búsqueda y lecturas, gracias por compartir en 15 minutos lo que seguro al inicio te pudo llevar más que eso.
Excelente video, gracias por estos vídeos cortos dónde nos enteramos de ciertas funcionalidades y cosas que son muy útiles y que en algunos caso tenemos que reinventar la rueda por el simple echo de no saber que ya existe algo que soluciona el problema
Gracias profe. Estaba ejecutando un Process que me guardaba un archivo .pfx en una carpeta y en la siguiente linea inmediatamente buscaba el archivo para obtenerlo, pero al parecer cuando lo buscaba no existía, con esto me di cuenta que tenia que esperar hasta que el proceso terminara de crear el archivo asíncronamente para después hacer uso del archivo
La imolementacion de Task es genial, es un wrapper de Threads que hace que manipular hilos se muy sencillo. Vengo de las época de ma eso de hilos en C, C++ y viejas versiones de .net y Admito que era un dolor de cabeza usarlos, hilos, semáforos, funciones de callback para manipular las respuestas , enviarles parámetros a tareas también tenía su complicación.
Hola Hector, muy bueno tu canal, los videos que he visto hasta ahora están muy bien explicados y sin falacias o verdades a medias. Es difícil encontrar videos pros como estos en RUclips y que además estén en español. Gracias.
Hasta que por fin he comprendido las tareas en C#. Solía utilizar Background una herramienta disponible en C# en dónde hacía las tareas en segundo plano tal como respaldar una base de datos en un hilo secundario a tu main.. Gracias por el vídeo 🙏
Buenas, soy nuevo en tu canal. La verdad la teoría la conozco, por lo menos lo básico y en que casos usar estos async, pero no sabia muy bien como implementarlo en .net o como funciona. Tuve que implementar un Quartz y estuve 1 semana aprox para hacerlo y entendia apenas lo que estaba haciendo. Con este video entendi y ahora sé como mejorar el desarrollo que hice. Explicas muy bien lo que aprendiendo solo te puede tomar hasta el quintuple de tiempo. Ahora voy de camino por las buenas practicas, pero tu canal me va ayudar muchisimo. Saludos
Hola ! Pasaba a dejarte un comentario agradeciéndote por todos los videos tuyos y lo bien explicado de tu contenido, me estas ayudando mucho a entender cosas que tengo que hacer en mi dia a dia! Gracias y saludos desde Argentina ❤
No se si ya tienes videos de Task chaining, el manejo de los token para detener las task y muchas otras funciones que también aplican. Esto es parte importante del desarrollo backend.
muy claro el ejemplo. ¿podrias extenderte en la diferencia entre usar task vs thread? con est no logro ver cual es la ganancia de usar uno u otro. gracias
tus videos me gustan mucho, he visto varios y abordas inquietudes sobre c# que otros sitios no lo hacen, como este. ojala sigas subiendo cosas, saludos
Excelente video, tus seguidores te pedimos más ejemplos de async await y Windows form. Con ejemplos de casos reales 🙏🙏. Gracias ayudas a muchos. Te amamos Hector
Gracias, solo que me quedo la duda entre Task y Thread, porque pareciera que funcionan de manera similar, aunque imagino que Thread trabaja de diferente forma
muchas gracias por la explicación, por favor sería bueno una lista de curiosidades así, cosas simples pero muy útiles y poco conocidas, al menos para mi.
Si te ha gustado el video puedes apoyarme dejándome un pulgar arriba 👍
Hashtag #pavadas
Excelente bro
Estaria interesante que hicieras un video de como cancelar una operacion de un task :) un saludo!
Explicación clara y puntual. Excelente.
Grande Hector, muchas gracias por el contenido, puro c#lover
creo que la gente en internet y sobre todo en RUclips necesita cerveza porque el resultado que genialidad para explicar algo que le dan tanta vuelta y por fin lo entendí
Excelente explicación y pude comprender el funcionamiento de Task de manera sencilla y por qué se pone el await y demás... sos crack!
Hermano.... mira que he buscado información sobre programación asíncrona... en 15 minutos he aprendido más que en 2 horas de clases...Muchas gracias.
No le habia entendido a nadie hasta que vi este video. Buena explicacion
la recomendación es que async/await sean utilizados en operaciones de I/O (web services, bases de datos, networking, file system, etc) para que el procesador se libere y pueda ejecutar código mientras espera la respuesta del task. Otra ventaja es que en métodos anidados, si ponemos un await y la tarea aún sigue ejecutándose, en el método padre se puede seguir ejecutando código hasta que se encuentra un nuevo await
Es como el Join en los threads?
En las interfaces graficas también se necesitan tas tareas e hilos, sino la interfaz se congela hasta que la tarea termine
la parte "en el método padre", supongo que te refieres al caller o el método donde llamamos a resultados asíncronos, en este caso no continúa ejecutándose (a menos que no uses el `await` delante del método asíncrono que estás llamando desde el caller), si usamos await por delante, el caller espera el resultado, la diferencia en este caso reside en el hecho de que nuestro caller "se libera", es decir nuestro caller no se bloquea esperando el resultado del await, solo se "encola" la tarea hasta que el resultado del await llegue, liberando al CPU para que pueda hacer otras tareas, una vez el resultado del await llegue, nuestro proceso principal (del caller) se reanuda, continuando la ejecución regular, como si de un programa síncrono se tratara. Lo importante a notar acá es que ya no bloqueamos a nuestro hilo principal cuando estamos esperando por resultados I/O sino se pone en pausa y notifica al procesador que se libere hasta que `await` nos avise que ya podemos reanudar nuestra ejecución principal, de esta forma nuestro procesador tendrá tiempo para hacer otras cosas.
Una analogía fácil sería que antes hacíamos colas para que nos atiendan (las personas por delante eran nuestros procesos I/O) pero ahora tu puedes sacar una cita y simplemente vas a la hora que te toca en lugar de estar esperando en la cola (en este caso te evitas el tiempo de hacer cola y en su lugar puedes hacer otras cosas de tu día a día)
Gracias Hector, aportas mucho a la comunidad, Dios te bendiga!
Saludos desde Italia de un paraguayo. Excelentes tus videos!
Saludos buen video, anteriormente programe en Windows form pero deje durante unos años de programar ahora que regreso a c# y aprender asp.net eh encontrado muchas cosas nuevas e interesante y tus videos me están sirviendo.
La mejor explicación para async & await de todo internet 👍
Eres el único que si explica bien
Excelente! Tus explicaciones son muy claras, necesitaba entender esto y ha quedado mas que claro!
Saludos desde Cusco, gracias por la explicación, simple y directo, sigue adelante.
Excelente, muy bien explicado. Me gustan tus publicaciones. Como programadores hay conceptos que para entenderlos te pueden llevar semanas de búsqueda y lecturas, gracias por compartir en 15 minutos lo que seguro al inicio te pudo llevar más que eso.
Excelente video, gracias por estos vídeos cortos dónde nos enteramos de ciertas funcionalidades y cosas que son muy útiles y que en algunos caso tenemos que reinventar la rueda por el simple echo de no saber que ya existe algo que soluciona el problema
Lo explicaste muy bien, sencillo con ejemplos. Me hubiera gustado tener este video 6 años atrás jajaja. Mil gracias
Eres el mejor explicando C#. Gracias por tus videos Bro.
He comprendido más conceptos de c# que nunca. Felicidades #elpavadas 👍
Eres un capo Héctor!, me sirvió de mucho
muy buen video, he aprendido c# contigo, saludos desde Venezuela.
Hola, gracias por la explicación, soy tu fan!
Gracias profe. Estaba ejecutando un Process que me guardaba un archivo .pfx en una carpeta y en la siguiente linea inmediatamente buscaba el archivo para obtenerlo, pero al parecer cuando lo buscaba no existía, con esto me di cuenta que tenia que esperar hasta que el proceso terminara de crear el archivo asíncronamente para después hacer uso del archivo
Gracias a ti entendi este tema despúes de buscar muchos recursos.
Extremadamente claro. Soy fan a partir de este video. Saludos.
Saludos desde Argentina
14 minutos bien chingones.... !!
Hola Hector.! este es el primero de tus videos que he visto y dejame decirte que explicas muy bien, te felicito 👏
Magistralmente explicado. Te felicito!!!
hombre excelente video y gran forma de explicar!
Un saludo desde Rep Dom!
Qué buen video, sería bueno que adicional a este video crearas uno explicando Task.FromResult y Task.CompletedTask, saludos hermano!
Aunque soy solo una aprendiz , tu explicación es super clara!muy bueno
Excelente. Recibe un saludo desde España...
La imolementacion de Task es genial, es un wrapper de Threads que hace que manipular hilos se muy sencillo. Vengo de las época de ma eso de hilos en C, C++ y viejas versiones de .net y Admito que era un dolor de cabeza usarlos, hilos, semáforos, funciones de callback para manipular las respuestas , enviarles parámetros a tareas también tenía su complicación.
Hola Hector, muy bueno tu canal, los videos que he visto hasta ahora están muy bien explicados y sin falacias o verdades a medias. Es difícil encontrar videos pros como estos en RUclips y que además estén en español. Gracias.
¡MUY CLARO! Muchas gracias. Enhorabuena Maestro. ✌😃
Gracias, me ayudó a entender y a poder implementarlo
Hasta que por fin he comprendido las tareas en C#. Solía utilizar Background una herramienta disponible en C# en dónde hacía las tareas en segundo plano tal como respaldar una base de datos en un hilo secundario a tu main..
Gracias por el vídeo 🙏
Excelente, por fin entendi como hacer un task
Me cayó como anillo al dedo, muy bien crack
Recién empecé a leer sobre métodos async y esto me dejo mas claro de como usarlos. Eternamente agradecido.
Buena explicación, bro. Saludos
Excelente Hector la sigues sacando del estadio. Gracias por compartir conocimiento.
Dios te bendiga mijo
Mejor imposible Héctor sos un genioooooooooooooooooooooo.
Buenas, soy nuevo en tu canal. La verdad la teoría la conozco, por lo menos lo básico y en que casos usar estos async, pero no sabia muy bien como implementarlo en .net o como funciona. Tuve que implementar un Quartz y estuve 1 semana aprox para hacerlo y entendia apenas lo que estaba haciendo. Con este video entendi y ahora sé como mejorar el desarrollo que hice. Explicas muy bien lo que aprendiendo solo te puede tomar hasta el quintuple de tiempo. Ahora voy de camino por las buenas practicas, pero tu canal me va ayudar muchisimo. Saludos
Me encanta tu canal, explicas muy bien Hector. Y tus videos son super entretenidos de ver. 10/10
Buenísimo. Paso a paso desde lo más básico.
excelente explicación, saludos ✌
Gracias bro! Excelente video!
Excelente! Super claro. Muchas gracias.
Entendible explicación!
Muy buena explicación!
sos un groso explicando !! gracias papu :*
Muy buena explicacion, y muy necesaria. Gracias
Claro y directo, Gracias amigo!
Video super duro!! Gracias!
Muchas gracias!!
Hola ! Pasaba a dejarte un comentario agradeciéndote por todos los videos tuyos y lo bien explicado de tu contenido, me estas ayudando mucho a entender cosas que tengo que hacer en mi dia a dia! Gracias y saludos desde Argentina ❤
No se si ya tienes videos de Task chaining, el manejo de los token para detener las task y muchas otras funciones que también aplican. Esto es parte importante del desarrollo backend.
Muy bueno amigo gracias
Wow q tal explicación y con cucharita, gracias!!!!!
Excelente vídeo! muy necesario... Gracias!
Buenisimo el video Hector! Muchas gracias!
Hola como andas?? Excelente explicación, muy bueno
Gracias Hector :D
Bien explicado.
Gracias
Excelente video. Estoy ingresando en el mundo de asincronismo y este video ha sido de mucha ayuda para seguir aprendiendo estos temas.
Gracias por el video muy bueno
buenísisisimo, gracias!!!
Muy buen video, podrías hacer uno de manejo de logs con task.
Quiza
muy claro el ejemplo. ¿podrias extenderte en la diferencia entre usar task vs thread? con est no logro ver cual es la ganancia de usar uno u otro. gracias
tus videos me gustan mucho, he visto varios y abordas inquietudes sobre c# que otros sitios no lo hacen, como este. ojala sigas subiendo cosas, saludos
buena explicación crack!
Task abrón!
Excelente video!
Héctor, saludos desde Colombia. Muy buenos los videos.
Puedes hacer uno especificando las funciones y del diccionary, soy fiel seguidor Hector gracias
Excelente explicación Héctor! Este es uno de los temas que más me costó aprender, esta explicación me hubiera salvado de muchas en la universidad 😅
Excelente video, tus seguidores te pedimos más ejemplos de async await y Windows form. Con ejemplos de casos reales 🙏🙏. Gracias ayudas a muchos. Te amamos Hector
Súper
Buena explicación, gracias
Gracias, solo que me quedo la duda entre Task y Thread, porque pareciera que funcionan de manera similar, aunque imagino que Thread trabaja de diferente forma
Gracias !!! Que grande
Eres un crack
buenisimo el video
Muy bueno el video!
gracias.
Grande el power de leon
muchas gracias por la explicación, por favor sería bueno una lista de curiosidades así, cosas simples pero muy útiles y poco conocidas, al menos para mi.
Buenísimo
Excelente!
Buen vídeo y muy bn explicado . Grax :)
Excelente tus videos Héctor.
Cuánto tiempo te llevó aprender todo lo que sabes?
Está muy chido, estaría interesante que hicieras un ejemplo de asíncronia con consultas a bases de datos
ruclips.net/video/6pNvTvKJPTQ/видео.html
Muy bien video, necesitaba algo asi 👌
Excelente y claro que agradecería más vídeos de hilos.
Papaaaaa, sos un groso!! me solucionaste una torta de problemas :3
Muy buen video, estaría padre ver luego una serie de vídeos con task o uno que compare task con thread.
Excelente contenido