MyPage is a personalized page based on your interests.The page is customized to help you to find content that matters you the most.

I'm not curious

Applying Concurrency and Multi-threading to Common Java Patterns

Course Summary

If you want to be able to write multi-threaded Java apps, this course is for you. You'll learn about problems with concurrent programming on multicore CPU, and false sharing. You'll also be introduced to the Java Memory model and more.

  • +

    Course Syllabus

    Understanding Concurrency, Threading, and Synchronization
    - 48m 2s

    —Introduction: What Are You Going to Learn in This Course? 2m 1s
    —Agenda: What Should You Know to Follow This Course? 2m 12s
    —Definition of a Thread, Existing Thread in Java 1m 20s
    —What Does It Mean for Tasks to Happen at the Same Time? 2m 47s
    —Happening at the Same Time on Multicore CPU 2m 47s
    —CPU Time Sharing Using a Thread Scheduler 1m 55s
    —What Is a Race Condition in Concurrent Programming? 1m 57s
    —Analysis of a Race Condition in the Singleton Pattern 3m 3s
    —Synchronizing Code to Prevent Race Conditions 3m 19s
    —Understanding the Lock Object in Synchronization 2m 30s
    —Understanding Synchronization Over Multiple Methods 3m 47s
    —What Is a Reentrant Lock? 2m 13s
    —What Is a Deadlock? 2m 34s
    —Quick Overview of the Runnable Pattern to Launch Threads 2m 10s
    —Live Coding: Launching Your First Thread 2m 52s
    —Live Coding: A Race Condition in Action, and How to Fix It 3m 48s
    —Live Coding: A Dead Lockin Action, and How to Fix It 5m 10s
    —Wrap-up of the Module 1m 28s
    Implementing the Producer/Consumer Pattern Using Wait / Notify
    - 36m 31s

    —Introduction: Agenda of the Module 1m 34s
    —Launching a Task in a New Thread with the Runnable Pattern 2m 51s
    —How to Stop a Thread Using the interrupt() Method 3m 25s
    —Implementing a First Producer/Consumer Example 2m 9s
    —A First Synchronized Version of the Producer/Consumer 2m 56s
    —What Is Needed to Fix This First, Flawed Version 2m 13s
    —Understanding How the wait() and notify() Methods Work 2m 58s
    —Fixing the Producer / Consumer Code Using Wait / Notify 1m 29s
    —Understanding How Synchronization Works with wait() and notify() 2m 38s
    —Live Coding: Unsynchronized, Flawed Producer/Consumer in Action 3m 5s
    —Live Coding: Synchronized, Flawed Producer/Consumer in Action 2m 29s
    —Live Coding: wait/notify, Correct Producer/Consumer in Action 1m 36s
    —Understanding the States of a Thread 1m 30s
    —Understanding the State Diagram of a Thread 2m 58s
    —Wrap-up on the State of a Thread 1m 25s
    —Wrap-up of the Module 1m 8s
    Ordering Read and Writes Operations on a Multicore CPU
    - 34m 7s
    Implementing a Thread Safe Singleton on a Multicore CPU
    - 41m 8s

Course Fee:
USD 29

Course Type:


Course Status:



1 - 4 hours / week

This course is listed under Development & Implementations and Telecommunications Community

Attended this course?

Back to Top

Awards & Accolades for MyTechLogy
Winner of
Top 100 Asia
Finalist at SiTF Awards 2014 under the category Best Social & Community Product
Finalist at HR Vendor of the Year 2015 Awards under the category Best Learning Management System
Finalist at HR Vendor of the Year 2015 Awards under the category Best Talent Management Software
Hidden Image Url