AsyncIO & Asynchronous Programming in Python

Поділитися
Вставка
  • Опубліковано 19 сер 2024

КОМЕНТАРІ • 133

  • @neelbanga
    @neelbanga 3 роки тому +59

    Hello! I have a very small programming channel, I was wondering if you had any tips for me? Thank you!

    • @NeuralNine
      @NeuralNine  3 роки тому +44

      Just took a look. Great English skills, are you a native speaker? Regarding tips I can just say the usual stuff. Upload good videos on a regular basis. Make the titles catchy but not Scammy. Make the thumbnails catchy but not ridiculous. I think for some people age might be a factor because they don't want to learn from someone who is younger. In that case, patience will pay off. Besides that, just focus on learning and making videos on interesting projects and over time people will come to your channel. You seem like a good teacher. Good luck! :)

    • @NeuralNine
      @NeuralNine  3 роки тому +18

      I just saw that you are doing this for one month. That is not a long time. You are doing quite well. Work hard, be creative but don't be impatient ^^

    • @neelbanga
      @neelbanga 3 роки тому +10

      @@NeuralNine No, I'm not actually a native speaker, my first language was Hindi then Japanese and after that I learned English. I have used English the most and the longest though so that's why it's my best language! Thank you for the tips, I will keep all of them in mind! I'll also make sure to be patient!

    • @NeuralNine
      @NeuralNine  3 роки тому +13

      @@neelbanga Wow impressive. Keep pushing, I think you will be successful! :) I will pin your comment. Maybe you will get some subs that way.

    • @neelbanga
      @neelbanga 3 роки тому +9

      @@NeuralNine Thank you so much!!! I love your videos, BTW I’m subscribed, it means a lot to be pinned by you!!!

  • @hadi_ayoub
    @hadi_ayoub 2 роки тому +42

    Even though I watched a lot of videos and read a lot of articles about asynchronous, I did not understand the mean idea of asynchronous until I watched the very first four minutes of your video. Great explanation! Thank you!

  • @MOFCrystal
    @MOFCrystal 2 роки тому +26

    This is a crystal clear explanation with the easiest examples. I have watched a few clips before this about the same topic, but I could only get a vague idea about this concept. Now, I think I can use this for my code. Much appreciated.

  • @damiankirstein3311
    @damiankirstein3311 Рік тому +1

    Probably the best explanation of basic asyncio on YT

  • @MoisesRDL
    @MoisesRDL 2 роки тому

    I read and watched videos without understanding, I found your video and understood everything. Great video, simple and well explained.

  • @mrjt6404
    @mrjt6404 11 місяців тому +1

    I have been studying asyncio for two weeks. I watched this video for the second time and now i think I understand this complex programming
    Thanks a lot❤

  • @jorge1869
    @jorge1869 2 роки тому

    Better explained impossible. I have seen other videos explaining this topic without understanding, but this guy is a crack. Subscribed!

  • @shiro3940
    @shiro3940 Рік тому

    I was confused at the few first minutes but when you're at the returning section, things got much clearer.
    thanks! 👌

  • @yourfriendlyneighborhood5547
    @yourfriendlyneighborhood5547 3 роки тому +9

    Keep going brother. Thank you so much for this channel and your videos ❤

  • @o1techacademy
    @o1techacademy Рік тому +1

    Excellent explanation of async await. Thank you very much sir.

  • @lucaspinto5549
    @lucaspinto5549 11 місяців тому

    You don't look nerdy but your lecturing was actually very good.

  • @iaroslavdavydiak6439
    @iaroslavdavydiak6439 10 місяців тому

    Thank you for explaining complicated things in simple words!

  • @charan2446
    @charan2446 3 роки тому +7

    I think its better to start a new channel or whatever maybe for BodyBuilding - NeuralFitness

  • @spmathf
    @spmathf 9 місяців тому +1

    exactly what I wanted. Great and simple explanation

  • @ani-zxk
    @ani-zxk 5 місяців тому

    neuralnine coming in clutch AGAIN.

  • @joshboye1427
    @joshboye1427 2 роки тому +1

    Thank u very much man. Helped a lot. U explained it in a very elaborate and understandable way.

  • @yash1152
    @yash1152 Рік тому +1

    4:58 > this is not very asynchrounos
    5:30 > while [other] is sleeping, print b
    yeah; thtat's what i wanted
    6:05 > once we have some idle time; we're going to run this task
    6:19 it seems to me that asyncio _tends to_ perform only cpu-bound blocking task and skip over the non-cpu task unless awaited for
    8:48 ret vals
    10:40 > future in python; it's like a promise in javascript
    thanks a lot - i have been watching soo many videos, but none covered it his well...
    others went somewhat deep but still missed the point.
    u kept it to manageable but still covered the worthy concepts of returns etc...
    thanks a lot.
    -----
    ```import asyncio
    async def main():
    task = asyncio.create_task(otfn)
    print('a')
    await asyncio.sleep(1)
    print('b')
    ret_val = await task
    async def otfn():
    print('1')
    await asyncio.sleep(2)
    print('2')
    return 10
    asyncio.run(main())```

    • @MFM88832
      @MFM88832 Рік тому

      Your code is buggy and doesn't work. Here is the fixed version:
      import asyncio
      async def main():
      task = asyncio.create_task(otfn())
      print('a')
      await asyncio.sleep(5)
      print('b')
      ret_val = await task
      print("Return value: ", ret_val)
      async def otfn():
      print('1')
      await asyncio.sleep(2)
      print('2')
      return 10
      asyncio.run(main())

    • @yash1152
      @yash1152 Рік тому

      @@MFM88832 hi! the code was copy pasted from the video as far as i can think

  • @srana977
    @srana977 3 роки тому +7

    Well explained, I watched 7-8 videos before this and this is the best explanation. Great work. Would like to see more on Asyncio and also Go tutorials :)

    • @soumya32
      @soumya32 11 місяців тому

      I am getting the error "partially initialized module 'asyncio' has no attribute 'run " . any solution?

  • @CarterCovers55
    @CarterCovers55 2 роки тому +1

    Nice balance of explanation and elaboration, much appreciated!

  • @SamirMamude
    @SamirMamude 2 роки тому

    This is the best explanation about async/wait in Python, thank you buddy!

  • @asadcomputee3942
    @asadcomputee3942 Рік тому +1

    Great video. It was easy to digest and it was fast to the point. Thank you!

  • @ds-f7g
    @ds-f7g 2 роки тому +2

    Perfect video - definitely the easiest to follow explanation of this topic that I've seen so far. Thanks!

  • @ksr11
    @ksr11 2 роки тому

    Nicely explained. I watched other videos on same topic. But I got the real subject from this video only. Well understood difference between thread and asyncio.

  • @AmitabhSuman
    @AmitabhSuman Рік тому

    Crisp and Clear!
    Perfect. Thanks a ton!

  • @shilashm5691
    @shilashm5691 2 роки тому +1

    Multithreading also does one thing at a time. It is also does the thing concurrently

  • @moimiess
    @moimiess 3 роки тому +1

    Awesome, just as I was looking into async you uploaded this. You helped alot, thank you!
    Btw: holy biceps!

  • @Man-Vs-Car
    @Man-Vs-Car 3 роки тому +3

    Love the lessons, thanks man, keep it up 👏🏽

  • @matiascardenas6769
    @matiascardenas6769 Рік тому

    Nice stuff, in a few minutes I was able to get a good idea of asyncio and clear quite some doubts. Thanks!

  • @viveksagarpandey6627
    @viveksagarpandey6627 2 роки тому

    Easily explained with efficiency. Thanks man !!

  • @ShukyPersky
    @ShukyPersky Рік тому +1

    what you have said to asynch programming describes precisely multithreading as well. In multithreading when a thread IOs and is waiting for stuff, another thread will get the CPU as GIL will be released

    • @lawrencedoliveiro9104
      @lawrencedoliveiro9104 Рік тому

      Threads preempt automatically, based on priorities or timeslice expiry. Coroutines only get preempted when they explicitly yield to other tasks. This makes for a simpler programming model.

    • @avivran1198
      @avivran1198 Рік тому

      @@lawrencedoliveiro9104 It sounds like a very undeveloped multi-threading infrastructure that needs such a ridiculous mechanism
      RTOS kernels support it natively (including prioritizing threads which are not available with python GIL

    • @lawrencedoliveiro9104
      @lawrencedoliveiro9104 Рік тому

      @@avivran1198 Threads were very big in the 1990s. And sure, all modern OSes and languages support them. It’s just that we don’t always need their complications.

  • @Spiray
    @Spiray 3 роки тому +1

    Wonderful explanation and great examples, thank you.

  • @coenfuse
    @coenfuse 6 місяців тому

    Thanks man. Loved this video.

  • @user-mn1od5il7w
    @user-mn1od5il7w Рік тому

    That content is very helpful! Thank you for clarifying explanation!

  • @msreeram8825
    @msreeram8825 3 роки тому +1

    Man, I rarely subscribe to channels.. and you made me do it.. a sub from me♥️. Underrated content👌🏻

  • @adityajha2553
    @adityajha2553 6 місяців тому

    Very clean explanation, Thanks!

  • @benlong1062
    @benlong1062 3 роки тому +1

    Thanks for this great explanation and example of async and await. I'd heard it mentioned a lot in other tutorials but never knew what it really meant.

  • @renataalmiratoth3110
    @renataalmiratoth3110 Рік тому

    you can use the asyncros function for making a illusion of the mesages lagging but their not lagging

  • @tobychen8832
    @tobychen8832 4 місяці тому

    Thank you for your nice video. I learned a lot from it.

  • @diegocassinera
    @diegocassinera Рік тому

    You should have also printed time in millis along with the a b 1 2. Important note, even do the program had total sleep of 3 seconds, the actual total running time of the program is less.

  • @dancorwin9232
    @dancorwin9232 3 роки тому

    Excellent explainer for a beginner like me. Thanks man!

  • @judeleon8485
    @judeleon8485 3 роки тому +2

    How does one get the return values when create_task has more than one function?

  • @t3lls
    @t3lls Рік тому

    Best video to the topic! Thank you!

  • @debhasish
    @debhasish Рік тому

    very nicely explained, Thank you for the tutorial

  • @raizdesamauma8607
    @raizdesamauma8607 Рік тому

    Great explanation, man, thanks a lot!

  • @miraclechielota3709
    @miraclechielota3709 11 місяців тому

    very well explained
    Thanks so much

  • @mohammedabdelfattahgheffar3659
    @mohammedabdelfattahgheffar3659 8 місяців тому

    Thank you this very helpful

  • @Ayoubased
    @Ayoubased 2 роки тому

    thank you for the video, just stepped upon your channel and watched alot of videos. Idk why but I cant get my head around asynchronous programming. I know it is basically telling the process to stop wasting time and do something whenever ur waiting. But the implementation is hard for me to understand.

  • @GelsYT
    @GelsYT 2 роки тому

    THANK YOU! VERY CLEAR EXAMPLE😁

  • @gri4on
    @gri4on 2 роки тому

    Best explanation

  • @dontbetoxic4387
    @dontbetoxic4387 3 роки тому

    wait thats awesome i want to learn the asyncio module because of your sockets video

  • @PedroContipelli2
    @PedroContipelli2 Рік тому

    Amazing explanation!

  • @EnglishRain
    @EnglishRain 3 роки тому

    Great explanation, thank you so much!

  • @teeseus8822
    @teeseus8822 2 роки тому

    at10:20 u could also just use f"{return_value = }"

  • @bouzie8000
    @bouzie8000 6 місяців тому

    This was very very good

  • @nachoeigu
    @nachoeigu 2 роки тому +2

    Wow, it is an amazing content. Thank you. I would like to know more about asyncio in Python. How did you learn it? Do you recommend some lecture or article?

  • @Ariya1234gamer
    @Ariya1234gamer 3 роки тому +1

    amazing i was asking myself how its possible :D

  • @mightyplayer6977
    @mightyplayer6977 2 роки тому

    Saved my day, thanks.

  • @wakgate577
    @wakgate577 2 роки тому

    Thx man it was very clear!

  • @yankunbigcat7925
    @yankunbigcat7925 Рік тому

    well explained, thank you!

  • @aymancassim8944
    @aymancassim8944 3 роки тому +1

    Great video as usual. Will it be possible for you to make a video on the abc library?

  • @saurabhmahra4084
    @saurabhmahra4084 3 роки тому

    Freaking amazing explanation!!

  • @martajunk181
    @martajunk181 7 місяців тому

    thank you for the video. I am not sure if your description of the difference between asyncio multithreading is accurate though. Aren't they generally about the same, i.e. concurrency (not parallelism) and the difference would be that in multithreading OS decides when to switch between the threads while in asyncio it is programmer themselves who indicates when it is safe to switch? I am by no means an expert in asynchronous/concurrent programming, so it is more a question than a decisive opinion

  • @AcidLite
    @AcidLite 3 місяці тому

    Very good video.

  • @WaldoTheWombat
    @WaldoTheWombat Рік тому

    I think you're mistaken, "Asynchronous Programming" is a higher level concept that includes both multiprocessing and multithreading. Plus, i read that Asyncio is multithreading, but where the programmer chooses when to switch between threads.

  • @OmidAtaollahi
    @OmidAtaollahi 6 місяців тому

    helped a lot. tnx

  • @nicovogelaar6427
    @nicovogelaar6427 10 місяців тому

    Is it possible to share memory between two asynchronous tasks while they are running?

  • @yash1152
    @yash1152 Рік тому

    7:17 hey, i just noticed. so; it means that control doesn't "await" as in pause till the completion of await.sleep right? while it waits for other "await"s? am i right?

  • @joelrendon7775
    @joelrendon7775 Рік тому

    Not getting the same results. makes hard to follow along/learn if I can't get the same results.

  • @user-ee5dm2pv1z
    @user-ee5dm2pv1z 4 місяці тому

    bro, this code snippet has proved very helpful in my project, but can you send me the code snippet if I want to print A,B,C asynchronously
    rather than A and B only, then ??????????????

  • @thelogs9434
    @thelogs9434 3 роки тому

    u soo cool! Thanks to you, I'm starting to do small projects

  • @thedevnoteyt
    @thedevnoteyt 3 роки тому

    Love watching ur videos ❤️🤘

  • @Duplicity75
    @Duplicity75 Рік тому

    Great vid

  • @HerozTech
    @HerozTech 3 роки тому

    My personal hero

  • @Bbdu75yg
    @Bbdu75yg 10 місяців тому

    Amazing 🎉

  • @bretearwood7027
    @bretearwood7027 Рік тому

    I've been coding for about 3 months now and my arms still aren't as big as yours.. what am I doing wrong?

  • @ameliabuns4058
    @ameliabuns4058 Рік тому

    Why do this instead of just using actual threads/processes?

  • @alejandrorodriguezvelez2326
    @alejandrorodriguezvelez2326 3 роки тому

    Hi, I need to make http requests to a REST API made in Flask from an app made in Tkinter. My question is if I need to use asyncIO to make the calls or is unnecessary in this case?
    The REST API was made to do CRUD operations connecting to a SQL database.

  • @gus.stviaaa
    @gus.stviaaa 3 роки тому

    I love your videos keep going

  • @troopekyt
    @troopekyt 3 роки тому +1

    ValueError: Unrecognized type code -1
    i am using a library called neuralintents to create an AI VIRTUAL VOICE ASSISTANT,
    but for some reason when i load the model i get that error? any ideas?

    • @troopekyt
      @troopekyt 3 роки тому +1

      I beg you, answer me

  • @yesnonononoooop7920
    @yesnonononoooop7920 3 роки тому +2

    OMG IM FIRST!
    Edit: NEURAL REPLIED ON MY COMMENT! I LOVE HIS VIDS

  • @user-zi8jn1go8k
    @user-zi8jn1go8k Рік тому

    Thanks for the video, I think I now got the idea HOW it works, but I don't get WHY should I use it? What is the advantage over plain old simple python threads?
    Python threads are also run concurrently but not in parallel. So it seems like all asyncio is achieving is the same result, just with extra jumping through the hoops with this async/await syntax garbage.
    While starting a regular thread is literally one line of code and you don't even need to modify the target function in any way.
    Is it all just to save a couple milliseconds and kilobytes used on creating a new thread?

    • @lawrencedoliveiro9104
      @lawrencedoliveiro9104 Рік тому +1

      Because threads can be preempted at any time, they can lead to mysterious and hard-to-track-down timing-related bugs. Because coroutines only get preempted at the points where you explicitly allow them to, this keeps things simpler.

  • @Dan-wh2wv
    @Dan-wh2wv Рік тому

    My question has noting to do with programming but is your arm real ?

  • @jonsnow3513
    @jonsnow3513 2 роки тому

    Hello what is your type of the mechanical switches , sound is impressive 🎷

  • @ludovicobaldo8742
    @ludovicobaldo8742 Рік тому

    What app do you use for coding?

  • @ShukyPersky
    @ShukyPersky Рік тому

    It seems that this mechanism has too many quirks one should be aware if using it.
    like the one demonstrated on time 6:34
    it seems that "task" was created. On one hand it was invoked though the main thread reached it end, while on the other hand it was invoked but due to release CPU when went sleeping the main thread existed not allowing the "task" to complete properly. This is insane, immature to be used.... kind of a joke
    Does anyone know a serious documentation on the web which thoroughly explains this mechanism ???? thanks

  • @felixwurm1467
    @felixwurm1467 Рік тому

    I hate asyncio, i think it's usles, it can't do anything better than normal Threads. I don't even feal that this ist easier. But your Video helped me understand.

  • @Stefkostov
    @Stefkostov 2 роки тому

    good video

  • @ravirajkudal5626
    @ravirajkudal5626 Рік тому

    Bro you got nice biceps ;)))))))

  • @nirmaltheprogrammer510
    @nirmaltheprogrammer510 3 роки тому +1

    finally 😃. still waiting for reinforcement learning
    edit : why no reply to me 😅

  • @mindedj2
    @mindedj2 3 роки тому

    Is this a built in color profile or you have your own?

  • @RAM-im5lr
    @RAM-im5lr 3 роки тому

    Waiting for Python ARCADE

  • @ragd4L
    @ragd4L 3 роки тому

    Does the program have 2 threads , one to execute and one to select which function to execute?

  • @dinimueterihrhurene2772
    @dinimueterihrhurene2772 2 роки тому

    cool

  • @dontbetoxic4387
    @dontbetoxic4387 3 роки тому

    start a fitness channel pl´z

  • @__3093
    @__3093 3 роки тому

    for the millionth time what's your intro song name lol

    • @troopekyt
      @troopekyt 3 роки тому

      Have u ever heard of shazam u dumbass

  • @stormbytes
    @stormbytes 2 роки тому

    You totally lost me. I never wrapped my head around this in Javascript either.

  • @avinashsah5456
    @avinashsah5456 3 роки тому

    Seriously? No one notices his giant Biceps?

  • @lirimkusari626
    @lirimkusari626 2 роки тому

    flori hmmmmmmmm, shiptar koka , e di une, sigg ,qin qin XD

    • @NeuralNine
      @NeuralNine  2 роки тому

      I know shiptar means Albanian, but I am from Austria ^^

    • @lirimkusari626
      @lirimkusari626 2 роки тому

      is Flori a common name in austria. First time i heard it outside of albania. Much love for the video ❤️.

  • @d1fficultgamer609
    @d1fficultgamer609 3 роки тому

    Day 4 of trying to get Pinned by NeuralNine

  • @kavitharajni8962
    @kavitharajni8962 3 роки тому

    im third!