Packt

Concurrency in Java - Practical Multithreading - 2026

Packt

Concurrency in Java - Practical Multithreading - 2026

Included with Coursera PlusLearn more

Ask Coursera

Gain insight into a topic and learn the fundamentals.
Intermediate level

Recommended experience

7 hours to complete
Flexible schedule
Learn at your own pace
Gain insight into a topic and learn the fundamentals.
Intermediate level

Recommended experience

7 hours to complete
Flexible schedule
Learn at your own pace

What you'll learn

  • Create, start, manage, and interrupt Java threads while understanding their lifecycle and execution behavior

  • Apply synchronization, locks, and communication methods to safely coordinate shared resources across threads

  • Use Executor, Fork/Join, and thread pools to manage concurrent tasks efficiently in Java applications

  • Build thread-safe programs with atomic variables, thread-local storage, and uncaught exception handling

Details to know

Shareable certificate

Add to your LinkedIn profile

Recently updated!

July 2026

Assessments

12 assignments

Taught in English

See how employees at top companies are mastering in-demand skills

 logos of Petrobras, TATA, Danone, Capgemini, P&G and L'Oreal

There are 12 modules in this course

In this module, we will introduce the core concepts of multithreading in Java. You will understand why concurrency is crucial for building efficient applications. The module sets the foundation for creating and managing multiple threads effectively.

What's included

1 video1 reading

In this module, we will explore the techniques for creating and managing threads in Java. You will learn the essential steps to spawn threads and control their lifecycle. This knowledge is critical for designing robust concurrent applications.

What's included

1 video1 assignment

In this module, we will focus on synchronization in Java. You will learn how to ensure thread safety when multiple threads access shared resources. The module provides practical strategies to avoid race conditions and maintain data consistency.

What's included

1 video1 assignment

In this module, we will examine thread interruption techniques in Java. You will learn how to stop threads safely and handle interruptions without causing inconsistencies. These practices are essential for maintaining robust multithreaded applications.

What's included

1 video1 assignment

In this module, we will explore techniques for inter-thread communication. You will learn how threads can synchronize actions using Java’s communication methods. This ensures threads interact efficiently and safely within concurrent programs.

What's included

1 video1 assignment

In this module, we will dive into the Executor framework in Java. You will learn how to simplify task execution and thread management. The module highlights modern concurrency tools that improve scalability and code maintainability.

What's included

1 video1 assignment

In this module, we will introduce the Fork/Join framework in Java. You will learn how to split tasks into smaller units and process them in parallel. This approach enhances performance for computationally intensive algorithms.

What's included

1 video1 assignment

In this module, we will discuss thread pools in Java. You will learn how to manage a pool of threads and improve efficiency through reuse. This ensures optimal resource management in concurrent applications.

What's included

1 video1 assignment

In this module, we will explore thread safety concepts and atomic variables in Java. You will learn how to avoid data corruption when multiple threads modify shared resources. These practices are key to building reliable concurrent applications.

What's included

1 video1 assignment

In this module, we will examine thread-local variables in Java. You will learn how to store data unique to each thread, avoiding conflicts. This technique enhances performance and simplifies data management in concurrent applications.

What's included

1 video1 assignment

In this module, we will cover the Java Lock framework. You will learn about different lock implementations and how to manage thread synchronization effectively. The module provides techniques for fine-grained concurrency control.

What's included

1 video1 assignment

In this module, we will explore thread groups and uncaught exception handling in Java. You will learn how to organize threads and catch exceptions safely. This ensures robust and maintainable multithreaded applications.

What's included

1 video2 assignments

Instructor

Packt - Course Instructors
Packt
2,001 Courses609,880 learners

Offered by

Packt

Explore more from Software Development

Why people choose Coursera for their career

Felipe M.

Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."

Jennifer J.

Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."

Larry W.

Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."

Chaitanya A.

"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."

Frequently asked questions