Advanced Java Concurrent Patterns

Concurrency is a hard to master topic. This Java course takes you from the basics you already know, (runnable and synchronization) to the next level: the java.util.concurrent API.
Course info
Rating
(67)
Level
Advanced
Updated
March 13, 2017
Duration
3h 28m
Table of contents
Description
Course info
Rating
(67)
Level
Advanced
Updated
March 13, 2017
Duration
3h 28m
Description

This course, Advanced Java Concurrent Patterns is an in-depth presentation of advanced fundamentals you'll need to understand to write efficient concurrent applications, that support heavy concurrency and provide high throughput. You'll learn about how you can improve the quality of your concurrent code, by using sophisticated concurrent tools that allow for smooth lock acquisition and fault tolerancy. You'll also be introduced to advanced data structures, such as the copy on write arrays, the concurrent blocking queues, the concurrent skip lists and concurrent hashmaps. By the end of this course, you will understand how to use cyclic barriers, count down latches and semaphores, and how to atomic variables to write non-locking code. All of this will help you on your journey to write better applications.

About the author
About the author

Passionate about programming computers for over 20 years, Jose made his debut in assembler and C, C for SIMD parallel machines before adopting Java as an object-oriented language. Assistant professor in Paris North University for more than 15 years, Jose also brings his expertise to many projects, in various industrial fields.

More from the author
Eclipse for Java Developers
Intermediate
3h 22m
5 Apr 2018
Java Fundamentals: Input/Output
Intermediate
3h 56m
19 Dec 2017
Java Fundamentals: NIO and NIO2
Intermediate
3h 13m
19 Dec 2017
More courses by Jose Paumard
Transcript
Transcript

Hi everyone, my name is José, welcome to my course Advanced Java Concurrent Patterns.

I am talking to you from Paris, where I am assistant professor, as well as a speaker at various Java conferences: JavaOne in San Francisco and Devoxx here in Europe, just to name a few.

I know how scary the title of this course might look! But don’t be afraid, I’ll take you through it step by step. We will see the patterns, how things can go wrong, and how to deal with the situation.

If you follow me, at the end of this course, you will have a good idea of the following:

  • The ExecutorService Pattern, Callables and Futures
  • What is interruptible or timed out lock acquisition?
  • What are locks, semaphores, barriers and latches?
  • What is CASing and atomic variables?
And at last we will see the concurrent Collections: copy on write array lists, concurrent hashmaps, and concurrent skip lists.

But before you move on, you will need to be familiar with the Java language, and the Collection API. You also need some knowledge of concurrency and be able to write basic lambda expressions. For that, you can check the Pluralsight library for Java courses on those topics.

Yes, this is an ambitious ride, but don’t be afraid, just let me guide you through all this, and you will see that from the other side, concurrency is in fact not that scary.