Asynchronous Programming in Java: Options to Choose from By Venkat Subramaniam

Поделиться
HTML-код
  • Опубликовано: 18 окт 2024
  • Java has had parallel and concurrent programming facilities from the start. In the recent years the business has needed as much, if not more, asynchronous capabilities, with webservices and microservices. In this session we will discuss the various options available, such as completable futures, reactive steams, and the newer virtual threads and discuss which options are better suited and why.
    VENKAT SUBRAMANIAM
    Dr. Venkat Subramaniam is an award-winning author, founder of Agile Developer, Inc., and an instructional professor at the University of Houston.
    He has trained and mentored thousands of software developers in the US, Canada, Europe, and Asia, and is a regularly-invited speaker at several international conferences. Venkat helps his clients effectively apply and succeed with sustainable agile practices on their software projects.
    Venkat is a (co)author of multiple technical books, including the 2007 Jolt Productivity award winning book Practices of an Agile Developer. You can find a list of his books at www.agiledevel.... You can reach him by email at venkats@agiledeveloper.com or on twitter at @venkat_s.

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

  • @impromp02
    @impromp02 9 месяцев назад +24

    You don't need a PowerPoint when you have vim skills that impressive

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

    Just amazing, I have watched so many talks by this guy and I have completed each video no matter how long. This man can make me watch programming content and learn something new for hours without any regrets.

    • @JuanGarcia-zy8yw
      @JuanGarcia-zy8yw 6 месяцев назад

      Yes because he really knows the semantics .. most ppl just say a few words and start coding something incomprehensible. This man takes advanced topics and breaks them down simply

  • @smanqele
    @smanqele 9 месяцев назад +5

    Wow, deserves far more watches. I am particularly grateful how Venkat deciphers the semantics for us behind the disjointed and unfortunate naming of functions in Java.

  • @surajbhattathiri
    @surajbhattathiri 10 месяцев назад +9

    King Venkat flexing his vi skills

  • @TanweerAlam2008
    @TanweerAlam2008 11 месяцев назад +14

    Impressive VIM skills

  • @mvmo4744
    @mvmo4744 Год назад +28

    Venkat is carrying the java world

  • @vladyslavh3940
    @vladyslavh3940 11 месяцев назад +4

    This presentation is so clear and inspiring! Thanks

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

    The most comprehensive async/concurrency introduction.

  • @shivamsoni6144
    @shivamsoni6144 10 месяцев назад

    Best Programing teacher and inspiration till now. thanks alot.

  • @tak68tak
    @tak68tak 11 месяцев назад +2

    wow. Venkat. i like his style of presentation. awesome.

  • @costathoughts
    @costathoughts 8 месяцев назад

    One of the best talks that I've watched! I really what a kind of talk comparing the Golang channel in the Java world once we
    now have the Project Loom

  • @ztrixx3280
    @ztrixx3280 8 месяцев назад +1

    this is gold. Thanks VENKAT.

  • @VijayJayaram-yr7pn
    @VijayJayaram-yr7pn 9 месяцев назад

    Java was adopted by Sir Venkat Subramaniam looong back😂😂😂
    one of the reasons why Java shines is because of Sir Venkat Subramaniam.
    🎉🎉🎉

  • @Anbu_Sampath
    @Anbu_Sampath Год назад +4

    I like the qtips analogy.

  • @darshmohi6338
    @darshmohi6338 11 месяцев назад

    Great, Weaved the contents like a 'sugaran'.

  • @UqabMedia
    @UqabMedia 8 месяцев назад +1

    2:07:40 One thing I don't understand who executes the blocking calls? When I make Thread.sleep() on virtual threads, there must be someone who will remount it back. But which thread do this??

    • @essamal-mansouri2689
      @essamal-mansouri2689 7 месяцев назад

      Imagine you have a single thread that receives a lot of jobs. This job can come with a future time, so that it won't start until X amount of time has passed. And now, that sleep will only need to schedule a task, insteaf of actually sleeping. what it does is that it schedules a "resume" task 1 second from now. Each thread has a list of tasks that it monitors or executes so there's no need for a parent supervisor to notify you to remount

  • @devtoro5601
    @devtoro5601 10 месяцев назад

    So Clear.

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

    Happiness is listening to Venkat at 2x speed 😅

  • @nmodin
    @nmodin Год назад +3

    Really nice presentation!
    Super silly question though, what's the scratchpad-ish tool used for coding the examples?

    • @snehasishroy39
      @snehasishroy39 Год назад +3

      It's a terminal -- he is using VIM to code/run all the examples in a a terminal

  • @kortneykane1268
    @kortneykane1268 9 месяцев назад

    I tried shown example with JDK 21, but seems newFixedThreadPool and newVirtualThreadPerTaskExecutor works the same way... any idea?

  • @sampleshawn5380
    @sampleshawn5380 9 месяцев назад +2

    Nan(i.e. Indian bread), this was nice XD

  • @RobsonCassianoSoftware
    @RobsonCassianoSoftware Год назад +4

    Great presentation, thanks

    • @Dram-jn5nw
      @Dram-jn5nw Год назад +2

      2 hours 39 min of video, you raised comment 30 min after publication, how did you watch whole presentation?

    • @georgeshalvashvili6270
      @georgeshalvashvili6270 Год назад +3

      He was listening at 5x speed

    • @kurkhulcomb8994
      @kurkhulcomb8994 Год назад +10

      parallel viewing, did you learn nothing?

    • @georgeshalvashvili6270
      @georgeshalvashvili6270 Год назад +8

      @@kurkhulcomb8994 Asynchronous viewing

    • @RobsonCassianoSoftware
      @RobsonCassianoSoftware Год назад +2

      @@Dram-jn5nw It's because I've been watching his presentations for so many years, so I don't need to see every second of it to give a compliment.

  • @TheMrHueyFreeman
    @TheMrHueyFreeman 11 месяцев назад +1

    how does adding thread.sleep cause it to move to a different thread? 52:00

    • @Derrick-f8m
      @Derrick-f8m 11 месяцев назад +5

      Since sleeping is a blocking operation, the Thread Scheduler does not want the other threads to die of starvation. So the Thread Scheduler allows another Thread to get some CPU time while the current thread sleeps. Now in the context of virtual threads, the sleeping thread will be unmounted from the platform thread (or carrier thread) so that another virtual thread can mount to that platform thread and do work until that sleeping thread wakes up. The sleeping thread is placed in Heap memory while it sleeps. When the sleeping thread wakes up, it will be picked up by another carrier thread to continue its execution.

  • @davio14
    @davio14 Год назад +1

    TIL I'm a thread

  • @andherium
    @andherium Год назад +3

    Is this a java channel? Why’re most videos about Java?

    • @ankeshkapil3129
      @ankeshkapil3129 Год назад +8

      maybe because java is most popular for high level application development.

    • @KrisVerbeeck
      @KrisVerbeeck Год назад +34

      Devoxx is a Java conference

    • @user-jw8jn7lh8c
      @user-jw8jn7lh8c Год назад

      @@KrisVerbeeckexactly what they want you to think. its actually a entry organization to javascript

  • @giantbush4258
    @giantbush4258 9 месяцев назад

    Nice shoes or are those socks?

  • @raduking
    @raduking 11 месяцев назад +1

    I’m really tired of all these addicted people starting a talk about their addiction, coffee is a drug, how about finding some other examples while you go to a rehab?

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

    Funny moments 😂
    23:51
    1:08:49
    1:25:56
    1:39:00