Multithreading and Concurrency in Java: Introduction to Concurrent Programming
Java
| Intermediate
- 13 videos | 1h 18m 39s
- Includes Assessment
- Earns a Badge
Concurrent programming in Java allows you to run multiple sequences of operations at the same time using a variety of objects and mechanisms. In this course, you'll learn about concurrent programming concepts such as threads and processes, including working with multiple tasks, multithreading, and multiprocessing. You'll explore race conditions and concurrency challenges and how to achieve concurrent thread synchronization using locks. Next, you'll look at how semaphores can be used and conditions that may cause deadlocks. You'll examine Java objects that aid in working with multithreaded application, using atomic operations, and the benefits of using thread pools to manage multiple concurrently executing threads. Finally, you'll learn use cases of the Futures object and the Fork/Join framework in terms of executing multiple threads.
WHAT YOU WILL LEARN
-
Discover the key concepts covered in this courseIdentify a sequential execution plan as well as its limitationsDescribe a multithreaded approach to tackling multiple tasksDistinguish between multithreading and multi-processing and describe the benefits and drawbacks of each approachRecognize a race condition and how this could lead to inconsistent outcomesDescribe how synchronization of concurrent threads can be achieved using locksIdentify use cases for semaphores and describe how they can be used
-
Recognize the conditions under which concurrent threads may become deadlocked and how this can be preventedRecall java objects that can be used to enable and simplify working with a multithreaded applicationCompare and contrast synchronization using locks with the use of atomic operations on atomic variablesDescribe the benefits of thread pools when it comes to management of multiple concurrently executing threadsList use cases of the future object in java and the fork/join framework when it comes to executing multiple threadsSummarize the key concepts covered in this course
IN THIS COURSE
-
2m 24s
-
5m 44sIn this video, you will learn how to identify a sequential execution plan and its limitations. FREE ACCESS
-
8m 23sAfter completing this video, you will be able to describe a multithreaded approach to tackling multiple tasks. FREE ACCESS
-
8m 26sIn this video, you will learn the difference between multithreading and multi-processing, and the benefits and drawbacks of each approach. FREE ACCESS
-
5m 45sUpon completion of this video, you will be able to recognize a race condition and how this could lead to inconsistent outcomes. FREE ACCESS
-
6m 43sUpon completion of this video, you will be able to describe how synchronization of concurrent threads can be achieved using locks. FREE ACCESS
-
4m 12sIn this video, you will identify use cases for semaphores and describe how to use them. FREE ACCESS
-
7m 44sAfter completing this video, you will be able to recognize the conditions under which concurrent threads may become deadlocked and how to prevent this. FREE ACCESS
-
6m 20sUpon completion of this video, you will be able to recall Java objects that can be used to enable and simplify working with a multithreaded application. FREE ACCESS
-
6m 23sIn this video, you will learn how to compare and contrast synchronization using locks with the use of atomic operations on atomic variables. FREE ACCESS
-
7m 9sUpon completion of this video, you will be able to describe the benefits of thread pools when it comes to managing multiple concurrently executing threads. FREE ACCESS
-
8m 9sUpon completion of this video, you will be able to list use cases of the Future object in Java and the Fork/Join framework for executing multiple threads. FREE ACCESS
-
1m 18s
EARN A DIGITAL BADGE WHEN YOU COMPLETE THIS COURSE
Skillsoft is providing you the opportunity to earn a digital badge upon successful completion on some of our courses, which can be shared on any social network or business platform.
Digital badges are yours to keep, forever.