HOME > Development > Efficient Java Multithreading and Concurrency with Executors

Efficient Java Multithreading and Concurrency with Executors

  • Development
  • Apr 18, 2025
SynopsisEfficient Java Multithreading and Concurrency with Executors,...
Efficient Java Multithreading and Concurrency with Executors  No.1

Efficient Java Multithreading and Concurrency with Executors, available at $64.99, has an average rating of 4.43, with 66 lectures, based on 1250 reviews, and has 10361 subscribers.

You will learn about Exploit the ninja techniques learned from this course to write safe and error free multithreading code in the first iteration itself. Become confident to move away from the old Threads-API and use the modern Executors-API for all multi-threading needs instead. Understand and exploit the various pro techniques to avoid the pitfalls while using Executors. Understand and leverage the similarities & differences between the Threads-API and the Executors-API. Rightly judge which Executor pool to use for which needs. Differentiate between safe and error-prone multi-threading code. Appreciate the reasons why Executors API was built even though the Threads API already existed. Write efficient multi-threading code by utilizing a plethora of pro tips and techniques. Get the Source Code of all the examples! This course is ideal for individuals who are This course is meant for all Java professionals who are familiar with Javas Threads-API but who are not comfortable with the Executors-Framework yet. For example – if you know how to terminate normal threads but not how to terminate Executor tasks or threads, then this course is for you. or Even if you do not know how to terminate normal threads, return values from normal threads and the like – then also this course is for you. Professionals who are still using the old Threads-API and want to have more practical knowledge about some advanced concepts of this API can also benefit from this course as Threads-API is also covered in detail. or If you love to have deep knowledge of underlying concepts of a technology or topic rather than just shallow familiarity, then this course is for you. or This course is probably not for you if you are looking to learn about Java multi-threading from scratch! or This course is definitely not for you if you do not know how to code in Java! It is particularly useful for This course is meant for all Java professionals who are familiar with Javas Threads-API but who are not comfortable with the Executors-Framework yet. For example – if you know how to terminate normal threads but not how to terminate Executor tasks or threads, then this course is for you. or Even if you do not know how to terminate normal threads, return values from normal threads and the like – then also this course is for you. Professionals who are still using the old Threads-API and want to have more practical knowledge about some advanced concepts of this API can also benefit from this course as Threads-API is also covered in detail. or If you love to have deep knowledge of underlying concepts of a technology or topic rather than just shallow familiarity, then this course is for you. or This course is probably not for you if you are looking to learn about Java multi-threading from scratch! or This course is definitely not for you if you do not know how to code in Java!.

Enroll now: Efficient Java Multithreading and Concurrency with Executors

Summary

Title: Efficient Java Multithreading and Concurrency with Executors

Price: $64.99

Average Rating: 4.43

Number of Lectures: 66

Number of Published Lectures: 62

Number of Curriculum Items: 66

Number of Published Curriculum Objects: 62

Original Price: $64.99

Quality Status: approved

Status: Live

What You Will Learn

  • Exploit the ninja techniques learned from this course to write safe and error free multithreading code in the first iteration itself.
  • Become confident to move away from the old Threads-API and use the modern Executors-API for all multi-threading needs instead.
  • Understand and exploit the various pro techniques to avoid the pitfalls while using Executors.
  • Understand and leverage the similarities & differences between the Threads-API and the Executors-API.
  • Rightly judge which Executor pool to use for which needs.
  • Differentiate between safe and error-prone multi-threading code.
  • Appreciate the reasons why Executors API was built even though the Threads API already existed.
  • Write efficient multi-threading code by utilizing a plethora of pro tips and techniques.
  • Get the Source Code of all the examples!
  • Who Should Attend

  • This course is meant for all Java professionals who are familiar with Javas Threads-API but who are not comfortable with the Executors-Framework yet. For example – if you know how to terminate normal threads but not how to terminate Executor tasks or threads, then this course is for you.
  • Even if you do not know how to terminate normal threads, return values from normal threads and the like – then also this course is for you. Professionals who are still using the old Threads-API and want to have more practical knowledge about some advanced concepts of this API can also benefit from this course as Threads-API is also covered in detail.
  • If you love to have deep knowledge of underlying concepts of a technology or topic rather than just shallow familiarity, then this course is for you.
  • This course is probably not for you if you are looking to learn about Java multi-threading from scratch!
  • This course is definitely not for you if you do not know how to code in Java!
  • Target Audiences

  • This course is meant for all Java professionals who are familiar with Javas Threads-API but who are not comfortable with the Executors-Framework yet. For example – if you know how to terminate normal threads but not how to terminate Executor tasks or threads, then this course is for you.
  • Even if you do not know how to terminate normal threads, return values from normal threads and the like – then also this course is for you. Professionals who are still using the old Threads-API and want to have more practical knowledge about some advanced concepts of this API can also benefit from this course as Threads-API is also covered in detail.
  • If you love to have deep knowledge of underlying concepts of a technology or topic rather than just shallow familiarity, then this course is for you.
  • This course is probably not for you if you are looking to learn about Java multi-threading from scratch!
  • This course is definitely not for you if you do not know how to code in Java!
  • Learn all the concepts of Java’s Executors API from scratch in combination with parallel concepts of the Threads API. Develop skills and deepen your knowledge of advanced multi-threading concepts by learning various tips & techniques and becoming aware of pitfalls when using Executors API. And refresh your advanced Threads-API concepts as well.

  • Do you know how to return values using the normal Threads API and its Runnables?

  • Do you know the various ways of terminating threads midway for both the APIs?

  • Do you know how to ‘join threads’ using Executors?

  • Do you know that you cannot catch stray exceptions leaked out from a thread by using try-catch block – neither in the Threads API nor in the Executors one? And that this can lead to third-party code killing your scalable, high-performance and high-availability enterprise application?

  • Do you know how to check if a task has finished execution using both the APIs?

  • Do you know what are daemon threads and how to create them using Executors?

  • Do you know how to name Executor threads?

  • Do you know the various ways to schedule tasks for running in future using both the APIs? Do you know the various ‘types’ of scheduling?

  • If the answer to any of these questions is ‘no’, then this course is for you (provided that you know Java and the basics of multi-threading already)! Learning from HD quality videos and nearly 6 hours of content will help you convert all these “nos” to “yeses” and will also give you an edge over your peers! Not only will this course help you learn how to get things done the multi-threaded way but also how to avoid the mistakes and pitfalls and thereby, increase your efficiency and productivity. All those long bug-fixing hours that you save can be spent finishing your other pending work or even for pleasure!

    Avoid the pitfalls while writing multi-threaded code by learning pro-tips

    In my 19 years of experience building large enterprise applications, I have made all the mistakes in multi-threading that can be made. And believe me – multi-threading bugs are costly and multi-weekend-destroying to resolve.

    I have used my vast experience to craft this course in such a manner so as to highlight the pitfalls that await a programmer and also provide tips to avoid those pitfalls. By going through this course, you will be years ahead of your peers who are yet to make all the mistakes that I have made.

    Content and Overview

    It is difficult to directly move from an older to a newer way of doing things if you are not comfortable with the older way also – you won’t be able to map things from the old way to the new way. So, this course has been structured in such a way that the Threads-API way of doing things are explained first and then the corresponding way to do them using the Executors-API is explained. This will help you understand not only the advanced concepts of Executors but also those of the Threads-API.

    So, this course is suitable for programmers who want to learn about the Executors API from scratch. It is also beneficial for those who want to refresh their concepts or learn the techniques of doing various operations using the Threads-API. Detailed examples along with the source-code are provided on every concept for both the APIs.

    The course starts with the basics first – ‘How to create and run threads’, ‘How to name the threads’ and ‘How to return values from threads’ – using both the APIs. And then, it gradually moves on to increasingly advanced concepts like ‘Terminating Threads’, ‘Catching Exceptions’, ‘Waiting for threads to finish without wasting CPU cycles’, etc.

    BEFORE YOU BUY THIS COURSE, DON’T FORGET TO WATCH THE FREE PREVIEW VIDEO ON ‘PRE-REQUISITES AND COURSE STRUCTURE’ IN SECTION-1!

    Course Curriculum

    Chapter 1: INTRODUCTION

    Lecture 1: Pre-Requisites And Course Structure

    Chapter 2: CREATING AND RUNNING THE THREADS

    Lecture 1: SOURCE CODE

    Lecture 2: Section Overview

    Lecture 3: Creating Threads Using the Threads-API – First Technique

    Lecture 4: Creating Threads Using the Threads-API – Second Technique

    Lecture 5: Creating Threads Using the Threads-API – Third Technique

    Lecture 6: Creating Threads Using the Threads-API – Fourth Technique

    Lecture 7: Creating Threads Using the Threads-API – Fifth Way

    Lecture 8: Executors Framework Overview

    Lecture 9: Important Interfaces And Classes In The Executors Framework

    Lecture 10: Creating Threads Using Executors Framework – Fixed Thread Pool

    Lecture 11: Creating Threads Using Executors Framework – Cached Thread Pool | Part-1

    Lecture 12: Creating Threads Using Executors Framework – Single Thread Executor

    Chapter 3: NAMING THE THREADS

    Lecture 1: Section Overview

    Lecture 2: Naming Normal Threads – First Technique

    Lecture 3: Naming Normal Threads – Second Technique

    Lecture 4: Naming Executor Threads

    Lecture 5: Creating Threads Using Executors Framework – Cached Thread Pool | Part-2

    Chapter 4: RETURNING VALUES FROM THREADS

    Lecture 1: Section Overview

    Lecture 2: Returning Values From Normal Threads – First Technique

    Lecture 3: Returning Values From Normal Threads – Second Technique

    Lecture 4: Returning Values From Executors – First Technique

    Lecture 5: Returning Values From Executors – Second Technique

    Chapter 5: CREATING DAEMON THREADS

    Lecture 1: Section Overview

    Lecture 2: Daemon Threads Using Threads-API

    Lecture 3: Daemon Threads Using Executors

    Chapter 6: CHECKING IF A THREAD IS ALIVE

    Lecture 1: Section Overview

    Lecture 2: Normal Threads Alive Check

    Lecture 3: Executor Threads Alive Check

    Chapter 7: TERMINATING THREADS

    Lecture 1: Section Overview

    Lecture 2: Terminating Normal Threads – First Technique

    Lecture 3: Terminating Normal Threads – Second Technique

    Lecture 4: Terminating Normal Blocked Threads

    Lecture 5: Terminating Executor Tasks – First Technique

    Lecture 6: Terminating Executor Tasks – Second Technique

    Lecture 7: Terminating Blocked Executor Tasks

    Lecture 8: Terminating ALL Executor Tasks In One Shot | Part-1

    Lecture 9: Terminating ALL Executor Tasks In One Shot | Part-2

    Chapter 8: HANDLING UNCAUGHT EXCEPTIONS

    Lecture 1: Section Overview

    Lecture 2: Handling Uncaught Exceptions For Every Thread

    Lecture 3: Handling Uncaught Exceptions Differently For Each Thread

    Lecture 4: Handling Uncaught Exceptions – Defaults And Overrides

    Lecture 5: Handling Uncaught Exceptions In Executors For Every Thread

    Lecture 6: Handling Uncaught Exceptions In Executors Differently For Each Thread

    Lecture 7: Handling Uncaught Exceptions In Executors – Defaults And Overrides

    Chapter 9: WAITING FOR THREADS TO FINISH

    Lecture 1: Section Overview

    Lecture 2: Joining Other Threads Using the Normal Threads-API

    Lecture 3: Returning Values From Normal Threads – Third Way

    Lecture 4: Joining Executor Threads

    Chapter 10: SCHEDULING TASKS

    Lecture 1: Section Overview

    Lecture 2: Main Task Scheduling Classes and General Scheduling Concepts

    Lecture 3: Scheduling Tasks For One Time Execution Using Normal Threads | Part-1

    Lecture 4: Scheduling Tasks For One Time Execution Using Normal Threads | Part-2

    Lecture 5: Scheduling Tasks For Fixed DELAY Repeated Executions Using Normal Threads

    Lecture 6: Scheduling Tasks For Fixed RATE Repeated Executions Using Normal Threads

    Lecture 7: Important Interfaces and Classes for Scheduling Tasks Using Executors

    Lecture 8: Scheduling Tasks For One Time Execution Using Executors

    Lecture 9: Scheduling Tasks For Fixed DELAY Repeated Executions Using Executors | PART-1

    Lecture 10: Scheduling Tasks For Fixed DELAY Repeated Executions Using Executors | PART-2

    Lecture 11: Scheduling Tasks For Fixed RATE Repeated Executions Using Executors

    Chapter 11: EXERCISES

    Lecture 1: Exercises

    Chapter 12: CONCLUSION

    Lecture 1: Outro

    Instructors

  • Efficient Java Multithreading and Concurrency with Executors  No.2
    Arun Kumar
    Software Architect & Engineer
  • Rating Distribution

  • 1 stars: 27 votes
  • 2 stars: 39 votes
  • 3 stars: 151 votes
  • 4 stars: 469 votes
  • 5 stars: 564 votes
  • Frequently Asked Questions

    How long do I have access to the course materials?

    You can view and review the lecture materials indefinitely, like an on-demand channel.

    Can I take my courses with me wherever I go?

    Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don’t have an internet connection, some instructors also let their students download course lectures. That’s up to the instructor though, so make sure you get on their good side!