Multithreading and Concurrency in Java: Thread Synchronization & Locks


Overview/Description
Expected Duration
Lesson Objectives
Course Number
Expertise Level



Overview/Description

In this demo-only course you will cover the basics of synchronization of threads in Java in order to prevent the unpredictability of the race condition. You will get experience with the implementation of synchronized functions and blocks, and also the use of Java lock objects such as the ReentrantLock and StampedLock.



Expected Duration (hours)
1.5

Lesson Objectives

Multithreading and Concurrency in Java: Thread Synchronization & Locks

  • discover the key concepts covered in this course
  • recognize the situations where a race condition could occur in Java
  • implement synchronized functions to manage multiple threads updating the same resource
  • differentiate between synchronized functions and synchronized blocks in Java
  • recall the conditions under which concurrent threads could encounter a deadlock in Java
  • identify some of the options available to prevent the occurrence of deadlocks
  • introduce a ReentrantLock in your program to enable exclusive access to a shared resource
  • use the tryLock() method of a ReentrantLock to prevent a potentially long wait for a resource
  • configure a thread to wait on a resource for a limited amount of time by using the tryLock() method of a ReentrantLock
  • implement a StampedLock to regulate access to a shared resource
  • distinguish between a readLock and writeLock for a Java StampedLock
  • summarize the key concepts covered in this course
  • Course Number:
    it_jmmtcjdj_03_enus

    Expertise Level
    Intermediate