¡Utilizas MAL la Asincronía!

Поделиться
HTML-код
  • Опубликовано: 17 дек 2023
  • En este video te diré que involucra trabajar con tareas asíncronas, y como puedes aprovechar su potencial de mejor manera.
    Mis Cursos de PROGRAMACIÓN: hdeleon.net/cursos-premium/
    🖥️ Mi Monitor: amzn.to/3dtnDkk
    ⌨️ Mi Teclado: amzn.to/3BtjKnq
    ⌨️ Mi Deck elgato: amzn.to/3dvEKC3
    🎧 Mis Orejeras: amzn.to/3BwQYm0
    🎤 Mi Micrófono: amzn.to/3qPvFHh
    Si quieres apoyarme y darme para una cerveza puedes hacerlo por aquí: paypal.me/HectorDeLeonGuevara
    Puedes apoyarme desde 0.5 USD al mes uniéndote como miembro al canal aquí: / @hdeleonnet
    🐦Twitter: / powerhdeleon
    🌎Mi Sitio web: hdeleon.net
    📻Raw Radio en Spotify: open.spotify.com/show/3obLU60...
    #programación #dev #programming

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

  • @hdeleonnet
    @hdeleonnet  6 месяцев назад +8

    Curso de Programación Backend en C# .NET: www.udemy.com/course/aprende-programacion-backend-en-c-net/?couponCode=2023DIC3
    Mis cursos de programación: hdeleon.net/cursos-premium/

  • @PsychoCrusher
    @PsychoCrusher 6 месяцев назад +45

    ahora estaría bueno un video que explicara las diferencias entre Asynchronous, Multithreading y Multiprocessing Programming, o concurrencia y paralelismo.

    • @gTosca_666
      @gTosca_666 5 месяцев назад +1

      ¿con ejemplos y todo? 🤣

  • @mcomarch
    @mcomarch 6 месяцев назад +35

    Esto es lo que te hace grande mi estimado ... No se trata de "enseñar a tipear codigo" ... "enseñar sintaxis" ... esas cosas están en la documentación de cada lenguaje... Tu enseñas temas mas útiles para el proceso de desarrollo ... Eres un "in-gun" jajajajaja SALUD! ... digo digo, Saludos!

  • @JosyRaza
    @JosyRaza 6 месяцев назад +12

    Este es el único tipo de contenido sobre programación que me entretiene más que cualquier cosa que ponga a la par del trabajo para "distraerme". Gracias Hector Cervezón.

  • @ismaelosky3697
    @ismaelosky3697 6 месяцев назад +4

    Eres muy grande Héctor.
    A menudo hacemos las cosas y no nos paramos a pensar en las implicaciones que tienen, hasta que llega un día en que el cliente se queja de que las aplicaciones que le hemos desarrollado no van tan bien ni tan rápido como deberían.
    Este tipo de tutoriales con ejemplos concretos de buenas prácticas me vienen de lujo. Gracias!

  • @sherminatorhd318
    @sherminatorhd318 16 дней назад

    Te debo mucho Héctor
    Voy a mi primer trabajo de backend y he seguido tus cursos

  • @SRS779
    @SRS779 6 месяцев назад +4

    Muchas veces había oído sobre programación asíncrona sin saber de qué trataba... Con este video me quedo claro las ventajas que tiene, y a qué está destinado este tipo de programación, muchas gracias ✨

  • @josuedev2440
    @josuedev2440 6 месяцев назад +1

    Gracias por la información. Saludos Hector

  • @hugoantonioayala7756
    @hugoantonioayala7756 6 месяцев назад +1

    Excelente como siempre Hector!!

  • @Ariel_Fernandez
    @Ariel_Fernandez 6 месяцев назад

    Muy bueno, gracias Héctor!

  • @alfirian
    @alfirian 6 месяцев назад +5

    Siempre aprendiendo del mejor!
    ¡Crack! 😎

  • @tatnaitech3410
    @tatnaitech3410 6 месяцев назад

    Que chingon Hector, estaba buscado info sobre esto.

  • @Mrleopola
    @Mrleopola 6 месяцев назад

    Excelente Héctor!

  • @marioeduardocontrerasserra3821
    @marioeduardocontrerasserra3821 6 месяцев назад +9

    Acabas de hacerme cuestionar mis 6 años de experiencia como programador! claramente lo hemos implementado mal, pero sobre todo se ha enseñado mal lo relacionado a la asincronía.
    Gracias por la regañada ❤

    • @alfredobadillo2280
      @alfredobadillo2280 6 месяцев назад +2

      Y eso me lo cuestione hace como 4 años cundo vi un video de hector. Y después dije la gente de javascript es muy pedante con el async y el await con sus videos de no uses promesas usa async and await de allí viene que muchos no entiendan esta parte.

  • @DavidPcss
    @DavidPcss 6 месяцев назад +1

    Gracias por este vídeo Hector, llevas toda la razón 👏👏👏👏👏👏

  • @armandoWebDev
    @armandoWebDev 6 месяцев назад

    Muy clara la info, gracias!!

  • @brauliomariano
    @brauliomariano 6 месяцев назад

    Aprendido!! Gracias Héctor.

  • @elianaparicio1695
    @elianaparicio1695 6 месяцев назад +2

    Cabezón haz mas videos así, esto sirve un chingo!!

  • @MiguelDiaz-jz1nh
    @MiguelDiaz-jz1nh 5 месяцев назад +1

    Grande Héctor, siempre aprendiendo cosas nuevas contigo, saludos desde Costa Rica!

  • @IronSh4dow
    @IronSh4dow 6 месяцев назад

    Excelente muchas gracias por compartir esta excelente infirmación, saludos.

  • @darkdragonblackw
    @darkdragonblackw 6 месяцев назад

    Por supuesto que aprendí, muchas gracias Master Hector

  • @victorisrael4956
    @victorisrael4956 6 месяцев назад

    Muchas gracias bro!

  • @Mrs_nor
    @Mrs_nor 6 месяцев назад

    Increíble video! Me encanta que expliques el concepto de las cosas

  • @AlvaraCOP
    @AlvaraCOP 6 месяцев назад +3

    Hector!!! eres lo máximo alchoolico de m....!!! gracias por la regañada...!! estuvo espectacular!!! un abrazo...!!!

  • @adiazwise
    @adiazwise 6 месяцев назад +1

    Excelente Mister Super clara la explicación.

  • @josuecruz7075
    @josuecruz7075 5 месяцев назад

    Muy bueno man, si le sabes, gracias por compartir conocimiento

  • @Miguel140370
    @Miguel140370 6 месяцев назад +1

    excelente explicación... gracias!

  • @Axotla
    @Axotla 6 месяцев назад +1

    gracias Héctor, como siempre.

  • @samuelsaravia7621
    @samuelsaravia7621 6 месяцев назад

    Excelente Héctor , gracias por la enseñanza

  • @crissanchez1251
    @crissanchez1251 6 месяцев назад +1

    Excelente video y una gran aclaración sobre el uso de las tareas asíncronas

  • @IvanHernandez-co3jy
    @IvanHernandez-co3jy 6 месяцев назад

    Gracias Hector, genial, has resuelto una de mis dudas existenciales sobre cómo sacarle provecho a la asincronía!

  • @maclaren33
    @maclaren33 Месяц назад

    Excelente video. Cuando puedas por favor un video así mismo q se explique q pasa si se utiliza inyección y q pasa si no. Para poder ver más allá de la teoría el beneficio en la práctica de las interfaces

  • @JuanCarlosDiazMontiel07
    @JuanCarlosDiazMontiel07 6 месяцев назад

    Gracias maestro Hector.

  • @DarknessMA
    @DarknessMA 6 месяцев назад +1

    Excelente, muy ilustrativo y claro el ejercicio

  • @juliopaez9989
    @juliopaez9989 23 дня назад

    Muy buena explicación sobre await, no sabía cuál era su función. Gracias por brindar tus conocimientos

  • @josecasanova3502
    @josecasanova3502 6 месяцев назад

    Gracias por los videos

  • @eloylopez7283
    @eloylopez7283 6 месяцев назад

    Muchas gracias, ahora todo tiene sentido, por ello tardan un poco los métodos que desarrollo

  • @matiasezequielherrera7327
    @matiasezequielherrera7327 6 месяцев назад

    Excelente! Al fin alguien de forma simple explica que no es solamente async await async await, a veces hay obsesion y ni siquiera era necesario invocar un metodo async.

  • @industriasroy7343
    @industriasroy7343 5 месяцев назад

    Wow, Gracias!

  • @antoniorodriguez-ks8ge
    @antoniorodriguez-ks8ge 6 месяцев назад

    Hermosho…. 😊, todos los días se aprende algo nuevo. Buena explicación, se entendió la idea 💡

  • @RodrigoMorenoIngenieria
    @RodrigoMorenoIngenieria 6 месяцев назад +4

    Que tal mi nombre es Héctor de león el único programador que perdió en la midudev league

  • @abdielvera3972
    @abdielvera3972 6 месяцев назад

    muy bueno saludos.

  • @hugosanchez454
    @hugosanchez454 6 месяцев назад

    Gracias por el video, no entendia muy bien el uso del await y task juntos, ahora entendi como usarlo correctamente, muchas gracias!!!!!

  • @williamvallecilla261
    @williamvallecilla261 6 месяцев назад

    Excelente explicación crack!!!

  • @natlius2
    @natlius2 6 месяцев назад

    Gracias por hacer este video

  • @SnS-SpartaN
    @SnS-SpartaN 6 месяцев назад +57

    *_Pero en mi PC funciona bien, creo que el problema es tu silla gamer no como yo programo_*

    • @antoniorodriguez-ks8ge
      @antoniorodriguez-ks8ge 6 месяцев назад

      Creo que no comprendiste bien la enseñanza. Podrás ser muy bueno escribiendo código, pero haciendo esto podrás ser mejor aún en lo que haces, saludos hacker 😊

    • @matt_vid
      @matt_vid 6 месяцев назад

      😂😂😂🎉😅

    • @juanjcarvajalg
      @juanjcarvajalg 6 месяцев назад +1

      Excelente aprender cuando y en que parte realmente se debe usar. Ojo con esta mejora reduces una hora por cada 3600 ejecuciones. Ojo solo soy un aprendis

    • @JoAkiiiN96
      @JoAkiiiN96 5 месяцев назад +1

      Mencionas algo muy acertado, en tu PC funciona bien, pero ojo que en tu PC muchas veces no haces pruebas con grandes cargas de datos, casó que me pasó con programación asíncrona, la persona que hizo las tablas por la razón que quieras se decidió tener x registro en una tabla y los datos de se registró en otra, las famosas tablas verticales, pues pasa y resulta que ese registró aparte de tener sus parámetros necesarios para construir otro archivo también estaba relacionado a más de 200 empleados osea que en ese único registro se iba a construir 200 archivos, el programa estaba diseñado a procesar una N cantidad de registros en cada ciclo, volver a correr y procesar otra N cantidad hasta que todos fueran procesados, ahhh y en cada corrida según en tipo de registro o solo guardaba archivos o aparte generaba solicitudes http😅, ahora entiendes porque hace sentido saber dónde y cuando usar el await?

  • @angelcarballobasto
    @angelcarballobasto 6 месяцев назад

    Excelente explicación.

  • @thegonzamc3771
    @thegonzamc3771 6 месяцев назад

    muuuy buen video hector, yo lamentablemente aprendi a tropesones en programacion paralela, me gusto mucho la explicacion queda muy claro

  • @rogeliogarciag
    @rogeliogarciag 6 месяцев назад +1

    Excelente video.

  • @Mars3_
    @Mars3_ 6 месяцев назад +1

    Hola Hector, seria bueno una serie de videos sobre arquitecturas de software como la arquitectura Onion y el Clean arquitecture, junto a un ejemplo practico en .Net o donde desees. Muchas gracias por aportar a la comunidad dev en español 🤘

  • @pedrorafaelsuarezesteris704
    @pedrorafaelsuarezesteris704 6 месяцев назад

    GENIAL! NO SE ME HABÍA OCURRIDO QUE LOS TASK SE PODÍAN AWAITAR LUEGO. THANX

  • @kevinduran8587
    @kevinduran8587 4 месяца назад

    Excelente.

  • @bhaskara0g468
    @bhaskara0g468 6 месяцев назад

    muchas gracias jesus

  • @jeancarlosluciano9211
    @jeancarlosluciano9211 6 месяцев назад +1

    excelente contenido 🤩.
    yo uso javascriot y esto se aplica perfectamente, trato de solo usar await cuando mi otro codigo depende de lo que viene y si son mas de 2 promesas trato de hacerlas en paralelas, de lo contrario mejor no hago tareas bloqueantes..
    me gusta tu contenido un crack

  • @parreyshon
    @parreyshon 6 месяцев назад

    Eres un crack .. muchas veces no nos atrevemos a preguntar y conocer el concepto de fondo.

  • @iturraldec
    @iturraldec 2 месяца назад

    gracias!!!

  • @useijin
    @useijin 6 месяцев назад +2

    3:17 me voy adelantando, ese código se va a ejecutar línea por línea pero las siguientes se van a quedar esperando a que termine la que se está ejecutando; mientras que podrías estar haciendo las 2 peticiones juntas de un tirón y ahorrarte bastante tiempo de espera innecesarios. Es súper importante entender bien estos conceptos

  • @Lidamster
    @Lidamster 6 месяцев назад +2

    Muchas gracias, lo he entendido. Pero, la próxima vez explícamelo con cerveza, que así me cuesta un poco😂👍👌

  • @jismaelcr
    @jismaelcr 6 месяцев назад

    Excelente contenido como siempre joven Héctor, podrá hacer un tutorial sobre win ui3, me gustaría aprender las bases o una orientación de como empezar, gracias de antemano, saludos cordiales, Dios lo bendiga.

  • @Nanaso22
    @Nanaso22 6 месяцев назад +1

    Muy bueno, recuerdo haber puesto await en lugares donde realmente no sabía si era necesario....como grabar en un log o crear el archivo o directorios o pasar a base64 el Buffer de una imagen.
    Datillos como el que la escritura en disco PUEDE SER lenta, como lo son las llamadas HTTP, me sirvieron un montón.
    Muchas gracias y un abrazo grande desde Córdoba Argentina.
    Y salud!, obvio.

  • @Brono177
    @Brono177 6 месяцев назад +4

    Tambien hay tareas que no necesitas esperar a que retornen un resultado, las llamadas "fire and forget", solo las ejecutas y puedes seguir con el resto del código.
    Para eso basta con usar "_ =" en cualquier Task, obvio hay que tener presente que, si el hilo principal de tu app se cierra, posiblemente mates esa otra tarea antes de que termine, es más util para una app o servidor que siempre está corriendo para ahorrarte algo de tiempo por ejemplo en guardado de auditorías u otra info que si falla no te afecta al 100%.
    Y haciendo mención de lo anterior, la unica desventaja de el "fire and forget" es que, si falla algo dentro del proceso, no te darás cuenta, simplemente finalizara la tarea y yap, aunque para eso también puedes manejar auditoria o logs dentro de esa tarea, pero en el hilo principal al final no sabra el resultado de esta.

    • @jchacking7722
      @jchacking7722 6 месяцев назад

      Si es una llamada de red, prefiero esperar a una respuesta del servidor por ejemplo.
      Asi que en ese caso soy mas de _ = await ...
      De esta forma me aseguro que termina (Luego se puede dejar a criterio del que use X funcion el esperarla o no)

  • @byteKAMM
    @byteKAMM 6 месяцев назад

    Notable!!!!

  • @WaldirGonzales
    @WaldirGonzales 6 месяцев назад

    eres un crack!

  • @tobalhenriquez8233
    @tobalhenriquez8233 19 дней назад

    Excelente maestro. Un crack!!! Pregunta. Haz hecho algun programa sencillo que podamos replicar como programadores que te ayude en el día a dia? Saludos y gracias por tu valioso contenido!!

  • @montes-zz3lx
    @montes-zz3lx 6 месяцев назад +1

    Maravillosa jugada

  • @juandavidarrublalopez4152
    @juandavidarrublalopez4152 6 месяцев назад +1

    Uff genial

  • @doTheBarba
    @doTheBarba 6 месяцев назад

    Al fin lo entendí, muchisimas gracias!! no entendia cuando usar await!

  • @seniorDragon913
    @seniorDragon913 6 месяцев назад

    Ufff, me acabas de salvar la vida.
    Gracias man! 🤟

  • @luiscriado1375
    @luiscriado1375 6 месяцев назад +1

    Grrracias profeeeeee

  • @omargarduno9100
    @omargarduno9100 6 месяцев назад +1

    Oye carnal, la neta me gusta un buen tu contenido, y tengo un curso tuyo de SQL, y me quedé pensando “qué chingón enseña este bro, debería de sacar uno de Excel (aunque ya haya muchos y que muchos de aquí ya sabemos)” siento que pegaría muchísimo un curso así tuyo (un mero consejo)
    Eres un duro 🔥😎🤟🏻

  • @lionelponce5404
    @lionelponce5404 6 месяцев назад

    No tenia idea de para que era ni como se usaba el await.. Supongo que también se puede usar en funciones..
    Gracias por la regañada..

  • @ericruiz384
    @ericruiz384 6 месяцев назад +1

    Regaño aceptado! Estoy volandolos de un proyecto que hice en Maui y estan jodiendo de mas el proyecto

  • @juancomande9543
    @juancomande9543 6 месяцев назад

    Buen video Hector! Me gustaría, si no te ofende, agregar un regaño más para que entiendan la diferencia entre whenAll y waitAll.
    utilizando tus ejemplos también me parecería interesante remarcar que sería más eficiente meter la funcionalidad en un método y llamarlo dos veces ya que tu primer await siempre va a bloquear al segundo.

  • @ricardosanhueza9832
    @ricardosanhueza9832 6 месяцев назад

    Gracias

  • @ateban69
    @ateban69 6 месяцев назад

    Tendré que probarlo, que tal se comporta cuando realizas la ejecución de stored procedures.

  • @vladimirbony1392
    @vladimirbony1392 6 месяцев назад

    Muchas gracias me sirvioooo...!!!!!!! Por favooooor no se si puedes hacer un video con UnitOfWork para que se pueda conectar a varias bases de datos por favooooor...!!!! gracias...!!!!

  • @theincredibleillmo9385
    @theincredibleillmo9385 6 месяцев назад

    Su cara al final de: si aprendiste Juanito o sigues igual de pendj@? Lo amè

  • @skillraiderv5289
    @skillraiderv5289 6 месяцев назад

    ¡Buenas Héctor! ¿Esto también es válido en JS? Saludos.

  • @IvanUgu
    @IvanUgu 6 месяцев назад

    justo hoy estuve haciendo uso de esto, al mismo tiempo hago un fetch y voy a hacer una consulta a la base de datos, despues abajo espero por las 2 task que terminen... ahora los tiempos no se suman y el tiempo total esta dado por el tiempo del fetch, saludos crack!

  • @twoels1933
    @twoels1933 6 месяцев назад

    De hecho asi la enseñaste tu en su tiempo, yo desde hace tiempo lo aprendi desde Pluralsight. e igualmente creo que la sintaxis que usaste no es la mejor. Muchs gracias por el contenido !

  • @derlogus
    @derlogus 6 месяцев назад

    Cuando trabajaba con SQL siempre lo usaba ya que algunas peticiones tardaban demasiado, ahora con Mongo ya no lo he usado. Sin embargo recordando el uso correcto de async, ya se me estan ocurriendo varias situaciones para mejorar en mi base de código actual.

  • @christianjosue79
    @christianjosue79 6 месяцев назад

    me aclarasre una duda antigua, gracias!

  • @yersonhtm9879
    @yersonhtm9879 6 месяцев назад

    en mi primer trabajo tuve que cargar la foto de perfil del usuario, lo había hecho mal y ponía el await, por tanto, toda la aplicación se quedaba esperando a que se cargara la foto y por esto tardaba mucho en iniciarse, muy buen contenido y gracias por la explicación alguien tenai que decirlo ^^

  • @eliecergrisales7532
    @eliecergrisales7532 6 месяцев назад

    La verdad no lo terminé de entender, pero ya sé qué tengo que ponerme a estudiar, muchas gracias

  • @acmesoft
    @acmesoft 6 месяцев назад +2

    Creo que te faltó el ejemplo que hubiese sido mas simple con Task.WhenAll, o sea convertir esas 4 (si no le erro) lineas de código en 1 para cada caso. Pero siempre viene bien porque me hace revisar código para encontrar mejoras para los proyectos, aqui tienes mi pulgar arriba como corresponde.

    • @darnack315
      @darnack315 6 месяцев назад +1

      No se puede. Porque la escritura en disco depende de que los contents ya existan. Son dos grupos de tareas, el segundo depende de que el primero se complete.

  • @adolfozamorapescador626
    @adolfozamorapescador626 6 месяцев назад

    Hola buen dia, espero leas este comentario, la verdad estoy aprendiendo, unos pudieron comprender pero yo no, me gustaria una explicacion para Re-Dumies sobre Asincronia, por favor un video, mil gracias, feliz dia,

  • @dhardysd
    @dhardysd 6 месяцев назад

    Muchas gracias por hacerme dar cuenta de mi error 🙌

  • @mauriciosandoval5369
    @mauriciosandoval5369 6 месяцев назад

    Hector, que pasa si es la impresion de un archivo? si la coloco en un var, estaria ejecutandose igual?
    o hay alguna forma que se ejecute, espere y cuando yo quiera imprima?

  • @eduardohidalgo2720
    @eduardohidalgo2720 6 месяцев назад

    ni en mi casa me regañan,bueno,un poco pero es por mi bien,asi como tu,gracias

  • @SvenKnutson
    @SvenKnutson 6 месяцев назад

    Héctor, gran maestro. Que es más recomendado, usar task y guardar la tarea por tarea o un Task.WhenAll?

  • @marcoduran6417
    @marcoduran6417 6 месяцев назад

    Yo entendí este tema en javascript el mejor lenguaje de programacion. :) y en el desarrollo de apps movil ya que si no lo hacia podria colapsar el hilo principal de la app (de la interfaz grafica😃)

  • @jaidervalencia2185
    @jaidervalencia2185 6 месяцев назад

    Me abriste los ojos, yo era de los que ponían await en cada petición a API o base de datos

  • @MatiBavaCc
    @MatiBavaCc Месяц назад

    es lo mismo para js?

  • @JoAkiiiN96
    @JoAkiiiN96 5 месяцев назад

    Me llego tarde el vídeo, en su momento alguien también me explico ese tema sobre el await😂, pero tu explicación fue excelente.

  • @lnl775
    @lnl775 6 месяцев назад

    podrías brindar la diferencia entre usar varios await o usar task.whenAll??

  • @lulz2217
    @lulz2217 6 месяцев назад

    Yo para mi trabajo requerí hacer una query así toda bien bizarra y puerk en menos de 200ms, hace 2 llamadas a servicios diferentes, total, por la necesidad me vino la iluminación de hacer esto mismo que dices mi buen Héctor, y aunque ya sabía esto, hay varias cosas que dices que no sé y que me sirven mucho xd gracias bro saludos desde Puebla
    Solo quería contar mi anécdota xd

  • @andymesta4913
    @andymesta4913 3 месяца назад

    Como seria para un ciclo for?

  • @invento4081
    @invento4081 Месяц назад

    Cosas como estas son super importantes, ahora explica el cancellation token xD

  • @alexandermaestretorres7199
    @alexandermaestretorres7199 6 месяцев назад

    Los detalles definen al buen programador.

  • @hernangarcia77
    @hernangarcia77 6 месяцев назад

    En js se pueden lanzar promesas y luego awaitearla mas abajo? Creo q no, cierto?
    La forma seria usar promiseall, intuyo