Java Asynchronous Programming

Ғылым және технология

A teaser and precursor to Reactive programming, Java Asynchronous programming allows efficient use of CPU and provides scalability.
Channel
----------------------------------
Master difficult programming concepts in few minutes. I try to explain difficult concepts like Java concurrency in simple to understand manner using animations and small code snippets. Explore videos on topics like Spring Boot, Cloud Foundry, Java 8 (with more coming soon). I am happy to clarify your doubts. Ask me anything in the comments. I am also happy to take requests for new videos.
New video added every Sunday.
Subscribe or explore the channel - bit.ly/defog_tech
Playlists
----------------------------------
Java Executor Service - bit.ly/exec_srvc
Java Concurrency - bit.ly/java_crncy
Spring Boot 2.0 - bit.ly/spr_boot2
Java 8 - bit.ly/java_8-11
Intellij IDEA Shortcuts - bit.ly/i_idea
Popular Videos
----------------------------------
Executor Service - • Java ExecutorService -...
Introduction to CompletableFuture - • Introduction to Comple...
Understand how ForkJoinPool works - • Understanding how Fork...
Java Memory Model in 10 minutes - • Java Memory Model in 1...
Volatile vs Atomic - • Using volatile vs Atom...
What is Spring Webflux - • What is Spring Webflux...

Пікірлер: 100

  • @snehil32
    @snehil323 жыл бұрын

    This KZread channel deserves over a million subscriber.

  • @himanshugusain1856
    @himanshugusain18565 жыл бұрын

    One of the most underrated KZreadr...you are the best sir .. massive respect 😊

  • @rishankgupta1507
    @rishankgupta15075 жыл бұрын

    You are articulated in your explanation which is lacking in others...I appreciate your hard work and thankful to you.

  • @livelifenjoy
    @livelifenjoy3 жыл бұрын

    Your each video covers most important aspect of any thing that one has to do in programming : What problem it's solving and how ? Awesome , please keep going !!

  • @demirg
    @demirg4 жыл бұрын

    Thanks for the great explanation and the background on why we need this.

  • @alissoncpnunes
    @alissoncpnunes3 жыл бұрын

    What an amazing job at explaining such complex topic!

  • @ambarishkapil8004
    @ambarishkapil80043 жыл бұрын

    Wow man, you have a very clear concept on this topic. Thanks for making the tutorial.

  • @shellindebted5328
    @shellindebted53284 жыл бұрын

    Awesome explaination.Thank you so much!!

  • @corabora6644
    @corabora66445 жыл бұрын

    Simply Fantastic. Clear cut, concise, to the point, no nonsense, learned a lot....thanks !! (A summary at the end would have been a nice touch) but I love the way he progresses through Async technologies in time

  • @DefogTech

    @DefogTech

    5 жыл бұрын

    Thank you! Have noted the summary thing, good idea!

  • @naseermohammad3756
    @naseermohammad37563 жыл бұрын

    I believe I am going to watch this atleast 6-7 times. Such beatufilly explained. And to grasp such deep concepts deserves watching as many times as I quote. This is 2nd time

  • @Sanjay-pu4sp
    @Sanjay-pu4sp4 жыл бұрын

    Very well explained, like all your other videos. Please don't stop creating content :)

  • @pragmaticsoftwareengineer7965
    @pragmaticsoftwareengineer79654 жыл бұрын

    Excellent video mate.. Thanks for doing this.

  • @dishithpoojary
    @dishithpoojary4 жыл бұрын

    We need more views and subscribers on this channel. The content is amazing! Thank you.

  • @chilukabharath4809
    @chilukabharath48093 жыл бұрын

    hey, finally i found best channel to get the information in detail.

  • @danielchangmasa2836
    @danielchangmasa28363 жыл бұрын

    This was a very insightful. Kudos. Going to watch more videos from this channel.

  • @SandeepKumar-bm7qu
    @SandeepKumar-bm7qu4 жыл бұрын

    Thank you for this tutorial. Very well explained. Excellent job. Can you please add separate tutorial for Event loop also? Thanks again.

  • @hyperborean72
    @hyperborean724 жыл бұрын

    Excellent overview. Extremely difficult topic made much more clear

  • @subhjitdutta3056
    @subhjitdutta30565 жыл бұрын

    very nice explanation.beyond my expectation.keep it up good work.

  • @amileyjones9082
    @amileyjones90825 жыл бұрын

    You are doing a great job with imparting the detailed knowledge you have with concurrency. Watched all your videos. Keep up the good work.

  • @DefogTech

    @DefogTech

    5 жыл бұрын

    Thank you for your kind words! Any topic suggestions for next videos?

  • @pawanpawar2446

    @pawanpawar2446

    3 жыл бұрын

    @@DefogTech please make videos on design patterns

  • @divyayadav6993

    @divyayadav6993

    2 жыл бұрын

    I really appreciate if you can make videos for design patterns in the same crisp fashion as you did for concurrency but without diluting the content. Basically, design pattern that can be used by Staff engineers level through your video. Thanks for your work and really appreciate for your generous effort.

  • @biltusamanta6932
    @biltusamanta69324 жыл бұрын

    Very good explanation.. neat and clean. Awesome keep up the good work

  • @rsrini7
    @rsrini75 жыл бұрын

    Wow!! What a deep and in relating the technologies... Extraordinary.. No words to express buddy.. Kudus to your work and hope to expect more from you. Thank you.

  • @DefogTech

    @DefogTech

    5 жыл бұрын

    Thank you so much for the kind words!

  • @kiranpanda8161
    @kiranpanda81616 жыл бұрын

    Crystal clear, explanation. Very good tutorial.

  • @khadijaaitbouiramouin7776
    @khadijaaitbouiramouin77763 жыл бұрын

    Magical explanation, Thank you soo much

  • @Bommutiwariplayz0170
    @Bommutiwariplayz01705 жыл бұрын

    Thanks a lot for the video.Very nice explanation

  • @mahendharkhedhar7887
    @mahendharkhedhar78876 жыл бұрын

    Wow wonderful amazing sir expecting more and more vedios like this

  • @rajibdas4u
    @rajibdas4u5 жыл бұрын

    Very good tutorial. Keep it up. Thanks.

  • @manojkumar-qf1rp
    @manojkumar-qf1rp5 жыл бұрын

    Thanks for the wonderful explanation

  • @RaviPatel-po2gu
    @RaviPatel-po2gu4 жыл бұрын

    Thank you very much, you have a great Knowledge Thank you Thank You Thank You

  • @marinab2337
    @marinab23374 жыл бұрын

    Thank you very match for lessons!

  • @rahulmodey1315
    @rahulmodey13152 жыл бұрын

    Very nicely explained. Thank You

  • @BeingDeveloperWithAB
    @BeingDeveloperWithAB5 жыл бұрын

    Very nice, keep uploading some more videos on core java and spring

  • @panupongsanprasit330
    @panupongsanprasit330 Жыл бұрын

    Thank you for most valuable explanation

  • @ismile47
    @ismile474 жыл бұрын

    Thank you so much very clear..awesome.

  • @wandererme3703
    @wandererme37036 жыл бұрын

    Thank you for making these videos very easy to understand.

  • @DefogTech

    @DefogTech

    6 жыл бұрын

    You're welcome! I'm happy it helped

  • @abhishekdubey5336
    @abhishekdubey53363 жыл бұрын

    Amazing explanation of such a complex topic..👍

  • @zeliofernandes1608
    @zeliofernandes16085 жыл бұрын

    You are a rolemodel who truly help others and not like others who just create lengthy videos to get no. of likes.

  • @DefogTech

    @DefogTech

    5 жыл бұрын

    Thank you.. my aim is only to help people understand concepts. I'm happy it's helping

  • @MateuszLubinski
    @MateuszLubinski2 жыл бұрын

    Great explanation, thanks!

  • @dineshchandgr
    @dineshchandgr3 жыл бұрын

    what an amazing video. kudos to u

  • @w_0_045
    @w_0_0453 жыл бұрын

    Thanks for sharing!

  • @Kynatosh
    @Kynatosh2 жыл бұрын

    This is so well explained wow

  • @vijaybhatt8467
    @vijaybhatt84672 жыл бұрын

    Dear Defog Tech, please make tutorials on vert.x toolkit in a similar fashion. Your style of teaching is excellent. Thanks

  • @sayedthebacktracker
    @sayedthebacktracker Жыл бұрын

    You know what question I have to understand Asynchronous programming. Thanks heaps.

  • @mk9834
    @mk98344 жыл бұрын

    your explanation is magnificent

  • @prasanthrajendran1611
    @prasanthrajendran16116 жыл бұрын

    I am really impressed about your interest on Java concurrency package. Simple explanations with your depth understanding.keep up your good work and I will be chasing you for your Spring Reactive Videos

  • @DefogTech

    @DefogTech

    6 жыл бұрын

    Thank you so much! Means a lot to me. My upcoming videos are about Condition class and Introduction to Spring Reactive. Hope you like them too.

  • @thomassun3046

    @thomassun3046

    5 жыл бұрын

    @@DefogTech I'm looking forward to the Spring course, and can U plz make a series of videos about Big data?Thx a lot

  • @mostinho7

    @mostinho7

    Жыл бұрын

    @@DefogTech please come back and continue making videos, you are a great explainer and you can grow this channel and make a lot of money from it. This is my advice if you are doing other work that is keeping you away from the channel, this channel will make you more money than anything else if you upload regularly with your same quality.

  • @veerapareddydushyanth2513
    @veerapareddydushyanth25135 жыл бұрын

    It's clean and neat explanation of asynch api... Thank you .... We r waiting for more videos on asynch api

  • @DefogTech

    @DefogTech

    5 жыл бұрын

    Thanks mate! Did you check out the spring webflux and java coroutine videos, they're also related to async API

  • @AshishBurnwal
    @AshishBurnwal6 жыл бұрын

    Best explanation sir. Thank you so much

  • @DefogTech

    @DefogTech

    6 жыл бұрын

    You are welcome buddy!

  • @subhraroutray5065
    @subhraroutray5065 Жыл бұрын

    Very good explanation 😊

  • @krishnajha9700
    @krishnajha97003 жыл бұрын

    thank you so much.....it's very helfull to me .....please make a tutolial for Netty Framwork

  • @ashvajitchauhan608
    @ashvajitchauhan6085 жыл бұрын

    Such videos are amazing to understand better. Please make a video on spring full package, thanks a lot for great knowledge sharing

  • @RohitPal-lz1wf
    @RohitPal-lz1wf3 жыл бұрын

    Soon you will reach 1 million. May God bless you

  • @amintalukder8583
    @amintalukder85833 жыл бұрын

    Very nice video.. nicely explained

  • @anilkinikar
    @anilkinikar4 жыл бұрын

    Your tutorials are awesome. But I am not seeing any new videos from you. Please keep up the good work. 👍🏼

  • @benpracht2655
    @benpracht26552 жыл бұрын

    Very rarely does somone cover the underlying OS/machine view of interpreted languages anymore. Plus one for you.

  • @SpiritOfIndiaaa
    @SpiritOfIndiaaa6 жыл бұрын

    Thanks a lot , quality of tutorials are high in quality ...sir how to debug java1.8 streams? any tools for it ?

  • @gurudatt-shahane
    @gurudatt-shahane Жыл бұрын

    Thank you❤

  • @diegoramos27
    @diegoramos273 жыл бұрын

    Hi sir, than you for the video, one question, do we need to use nio at client side in order to consume Spring Web Flux service? Or how do we implement the client side? Thank you

  • @sriharshaananthoju8671
    @sriharshaananthoju8671 Жыл бұрын

    You deserve million subscribers!

  • @rajneeshraikwar6285
    @rajneeshraikwar62854 жыл бұрын

    Please create video on concurrent collection of java 8

  • @centurion3708
    @centurion37083 жыл бұрын

    Do you think i should invest my time learning reactive programmng or native conccurency api ?

  • @thomassun3046
    @thomassun30464 жыл бұрын

    It is so clear for me! Could I ask a question please?imagine that in a simple java program which just include a main thread and print"hello world", normally I will execute all code and exit.but what if I use completeabefuture call supplyAsync which will take 5mins to download a video. and thenAccept to print something. It will absolute block the program to be finished right? I think main thread will be blocked!

  • @nikhilpawar7876
    @nikhilpawar7876 Жыл бұрын

    You are God of multithreading❤

  • @amitmohanty2679
    @amitmohanty26793 жыл бұрын

    Thanks!

  • @DefogTech

    @DefogTech

    2 жыл бұрын

    Thank you so much for the monetary appreciation. Means a lot to me!

  • @anubhavgupta8075
    @anubhavgupta8075 Жыл бұрын

    Hi Sir, Could you please make videos on JAVA microservices?

  • @rishikapoor5476
    @rishikapoor54764 ай бұрын

    May i know the things we try to achieve using concurrency using lock system or we can say wait and notify method but in this case only 1 thread is executed once at a time then what is the benefit of using multithreading here. We use 2 threads for different purpose but only one thread works at once so my query is if the scenario where you have to use lock mechanism can we achive that task without using mutithreading

  • @subhashanand2276
    @subhashanand22764 жыл бұрын

    Very helpful, wanted to applaud using the youtube feature. But the payment keeps on failing.

  • @prasannakarthikl
    @prasannakarthikl3 жыл бұрын

    nice..

  • @AnasKhan-ch2xh
    @AnasKhan-ch2xh4 жыл бұрын

    Hi brother, your videos are superb. I just wanted to know if I have a long array to process and I want to divide it in multiple chunks and give it to multiple threads, how can I do it. Please help.

  • @DefogTech

    @DefogTech

    4 жыл бұрын

    Best way to handle this is to push all elements in executor service which are stored as tasks in blocking queue.. and they will be handled by threadpools utself

  • @superdevelopertr6127
    @superdevelopertr61275 жыл бұрын

    You have talked about Sync API future get() method. What if we keep list of futures after we submit our tasks to executor service and in future we get result, will it be async in that matter?

  • @DefogTech

    @DefogTech

    5 жыл бұрын

    The task will be performed in Async manner but get() blocks the thread until result is ready making it not ideal

  • @aditchauhan876
    @aditchauhan8765 жыл бұрын

    You owned viewers

  • @VenkataSomaSekharS
    @VenkataSomaSekharS6 жыл бұрын

    Hi Thanks for your videos. Quick brush up from Java Concurrency in Practice. Could you please add some videos on topics like ZeroGC, OffHeap data structures like Chronicle HFT / Coral Collections, Disruptor 3.0, Memory Mapped I/O, NIO, Kafka Thanks & Best Regards Sekhar SVS

  • @DefogTech

    @DefogTech

    6 жыл бұрын

    Will add it to the list. Though I have limited experience on Java performance. So, please expect delays :)

  • @MakeItStik

    @MakeItStik

    4 жыл бұрын

    Were you able to find any good resource on these topics ?

  • @diegoramos27
    @diegoramos275 жыл бұрын

    One question, when you use callback isn’t that creating a new thread to wait for the operation to complete? In that case, wouldn’t the thread pool start starving if thousand of calls are being made at the same time? Because the main thread would not be blocked but still the listener threads would be blocked, right?...

  • @suman6327

    @suman6327

    4 жыл бұрын

    I kind of have same question as you. If you look code snippet @9:45, callback is essentially a Thread (new Runnable()). I would like instructor to Defog this point. Thanks

  • @gauravkungwani

    @gauravkungwani

    3 жыл бұрын

    i was also thinking---- does this asynchronous callbacks wont create separate threads, so how the problem of having thousands of threads is solved ?

  • @venkteshdwivedi
    @venkteshdwivedi4 жыл бұрын

    can you please refer some books for more knowledge of Java concurrency

  • @DefogTech

    @DefogTech

    4 жыл бұрын

    Concurrency in practice by Brian Goetz

  • @AdityaGupta-yi7oe
    @AdityaGupta-yi7oe2 күн бұрын

    So Async API is taken from Node while Java fiber is taken from Golang

  • @PizzaGamingTheReal
    @PizzaGamingTheReal Жыл бұрын

    Hello, you say that servlet thread-pool is a fixed 200 thread-pool and when we are doing a long job in each request we can slow down the server for the users, i.e. if we have 200 requests and still they are processing user 201 has to wait until one of the jobs finishes, hence we have to use asynchronous programming. Cool, but I have question regarding the traditional CompletableFuture variant and WebFlux's Mono, Flux variant (FYI: I watched your video about WebFlux). In 10:00 minute you say that we create a new thread under the hood, but in the WebFlux's video you say that it is event based, that is we are still using maximum 200 threads, when we get a request we pass it to the DB asynchronously and then we handle other requests with that thread and when the DB finishes its job it fires an event and with one of our threads from out servlet thread-pool we get the result and send as the response back to the user. Did I understand it right?

  • @DefogTech

    @DefogTech

    Жыл бұрын

    Its been a while since I checked the Spring code. My current understanding is: within the servet GET method, if we mark the processing as async, it will get offloaded to another thread-pool thus servlet thread will become free to accept more requests. The other thread-pool could either be a single thread which is reactive/event-based or N threads. In Webflux example the servlet thread-pool directly calls DB. But yes, overall idea being no-where you should have synchronous processing in the flow, otherwise the processing will slow down.

  • @PizzaGamingTheReal

    @PizzaGamingTheReal

    Жыл бұрын

    @@DefogTech Thanks!

  • @narendra9903
    @narendra99033 жыл бұрын

    Am wondering why there are no new videos😭

  • @pddesi952
    @pddesi9522 жыл бұрын

    Why this person not creating new videos???

  • @vinaypandey5599
    @vinaypandey55993 жыл бұрын

    Hi Deepak, Seems you have stopped creating videos. If you are reading this comment can you add a video on LOOM and GRAAL please? I don't think anyone can explain it better than you.

  • @DefogTech

    @DefogTech

    3 жыл бұрын

    Hi Vinay, I had created one for Loom - kzread.info/dash/bejne/iKt20LKTgc-bnZs.html Will do one for Graal soon

Келесі