Multithreading and Concurrency in Java: Introduction to Concurrent Programming

Java SE 13    |    Intermediate
  • 13 videos | 1h 18m 39s
  • Includes Assessment
  • Earns a Badge
Likes 31 Likes 31
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 course
    identify a sequential execution plan as well as its limitations
    describe a multithreaded approach to tackling multiple tasks
    distinguish between multithreading and multi-processing and describe the benefits and drawbacks of each approach
    recognize a race condition and how this could lead to inconsistent outcomes
    describe how synchronization of concurrent threads can be achieved using locks
    identify 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 prevented
    recall Java objects that can be used to enable and simplify working with a multithreaded application
    compare and contrast synchronization using locks with the use of atomic operations on atomic variables
    describe the benefits of thread pools when it comes to management of multiple concurrently executing threads
    list use cases of the Future object in Java and the Fork/Join framework when it comes to executing multiple threads
    summarize the key concepts covered in this course

IN THIS COURSE

  • Playable
    1.  Course Overview
    2m 24s
  • Playable
    2.  Working with Multiple Tasks
    5m 44s
    In this video, you will learn how to identify a sequential execution plan and its limitations. FREE ACCESS
  • Locked
    3.  Multithreading
    8m 23s
    After completing this video, you will be able to describe a multithreaded approach to tackling multiple tasks. FREE ACCESS
  • Locked
    4.  Multiprocessing
    8m 26s
    In this video, you will learn the difference between multithreading and multi-processing, and the benefits and drawbacks of each approach. FREE ACCESS
  • Locked
    5.  Challenges with Concurrency
    5m 45s
    Upon completion of this video, you will be able to recognize a race condition and how this could lead to inconsistent outcomes. FREE ACCESS
  • Locked
    6.  Synchronization and Locks
    6m 43s
    Upon completion of this video, you will be able to describe how synchronization of concurrent threads can be achieved using locks. FREE ACCESS
  • Locked
    7.  Semaphores
    4m 12s
    In this video, you will identify use cases for semaphores and describe how to use them. FREE ACCESS
  • Locked
    8.  Deadlocks
    7m 44s
    After 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
  • Locked
    9.  Concurrency Objects in Java
    6m 20s
    Upon 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
  • Locked
    10.  Atomic Variables
    6m 23s
    In this video, you will learn how to compare and contrast synchronization using locks with the use of atomic operations on atomic variables. FREE ACCESS
  • Locked
    11.  Executors and Thread Pools
    7m 9s
    Upon 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
  • Locked
    12.  Future Objects and Fork/Join
    8m 9s
    Upon 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
  • Locked
    13.  Course Summary
    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.

PEOPLE WHO VIEWED THIS ALSO VIEWED THESE

Likes 242 Likes 242  
Likes 285 Likes 285