Java Multithreading and Parallel Programming Masterclass

Multithreading is an advanced topic for any developer, and they struggle to understand many allied concepts related to it. The goal here is to make you understand in depth the multithreading concepts, applied and exemplified in Java.

The course starts with the basics of multithreading—threads, processes, concurrency, and parallelism. Then you will go through thread management concepts. After that, you will learn about thread synchronization and look at synchronization tools such as locks, wait sets and notifications, read and write locks and semaphores, barriers and phasers, and deadlocks and cache coherency enforcement. Next, you will explore tools in Java to deal with thread reusability, manage performance, choose the right parameters (tuning), and many others.

Next, you will see how to improve the runtime of a couple of known algorithms through multithreading. After that, you will study a couple of problems and their solution on Java Threading API to understand parallelism and synchronization. Finally, you will look at the connection between multithreading and widely used frameworks, such as Spring Boot, JavaRx, and JavaFX.

By the end of this course, you will understand multithreading in detail, get hands-on experience in Java, and learn to improve the performance of the app with multithreading.

All the resource files are added to the GitHub repository at:
https://github.com/PacktPublishing/Java-Multithreading-and-Parallel-Pro…

Type
video
Category
publication date
2022-10-27
what you will learn

Understand why multithreading is a real advantage for any Java developer
Understand the basic building blocks of multithreaded applications
Learn when multithreading can speed up the application and when it can’t
Look at the OS and hardware implications of a multithreaded application
Leverage and connect the concepts learned with real-world projects
See the connection between multithreading and widely used frameworks

duration
547
key features
A well-defined course on multithreading with all requisite resources and materials * Complete hands-on and visually engaging lectures along with projects and real-world connections * Get to see relevant and highly practical examples, and each topic is explained from scratch
approach
This is a well-structured, visually appealing and step-by-step course split into multiple sections, each one exploring a major topic in multithreading and providing a unique learning experience. 90% of the course contains hands-on, practical examples along with projects, exercises, and quizzes. You will also see tools and popular Java frameworks used in the industry to understand real-world implications.
audience
This course is ideal for beginner Java developers who want to enhance their skillset by learning multithreading and parallel programming the right way.

Any developer with basic Java knowledge (including Object-Oriented Programming), who wants to improve the performance of their applications by leveraging parallel programming, and who wants to learn multithreading from scratch can gain a lot from this course.

Basic Java OOP knowledge (classes, interfaces, methods), IntelliJ IDEA, and Java 15 (JDK) are the only requirements to get started.
meta description
The best online resource you need to become proficient in working with threads and correctly apply multithreading techniques to your applications, in order to leverage the CPU capabilities of your machines and max out the application throughput.
short description
Enhance your coding skill set by learning Java multithreading and parallel programming. Figure out common problems such as debugging codes, splitting a problem into multiple independent pieces, and measuring the runtime and performance of your code. Save time and avoid going into the same pitfalls while learning multithreading.
subtitle
Learn multithreading the right way in a complete, engaging, and a step-by-step guide
keywords
Java, multithreading, parallel programming, jUnit, VisualVM, VisualVM launcher, parallel algorithms, thread synchronization, thread management, concurrency, IntelliJ IDEA, SpringBoot, JavaRx, JavaFX
Product ISBN
9781804619377