A Guide to Java Concurrency

Master the art of writing concurrent program in java

Welcome to the Java concurrency course. In this course, you will get familiar with the concepts of java multithreading and how it is used to build modern concurrent application. Why learn java concurrency?. The concepts that you will learn from this course can be applied to all the programming languages which provide concurrency support. Whether you are beginner or seasoned programmer, you will definitely learn something from this course. Java is the most widely used language from server to mobile phones.

What you’ll learn

  • You will learn java concurrency framework.
  • You will understand the java memory model, thread safety, atomicity, inter-thread communication.
  • You will understand Immutability and it’s usage.
  • You will learn about executors, thread pools, producer consumer pattern..
  • You will learn about the high level concurrency objects such as CountDownLatch, CyclicBarrier, Semaphore, Exchanger and Phaser..
  • You will understand what is deadlock and how to resolve it..
  • You will understand java collections framework and some of the concurrent collections provided by java concurrency framework..
  • You will learn about the atomic classes of java concurrency framework..
  • You will get to know the difference between blocking and non-blocking algorithms..
  • You will learn how to build your own synchronizer using AbstractQueuedSynchronizer.

Course Content

  • Introduction –> 11 lectures • 2hr 6min.
  • Non Blocking Algorithms –> 2 lectures • 18min.
  • Threads –> 3 lectures • 32min.
  • Executors & ThreadPools –> 8 lectures • 1hr 39min.
  • Locks –> 6 lectures • 1hr 7min.
  • High Level Concurrency –> 10 lectures • 1hr 23min.
  • Custom Synchronizer –> 2 lectures • 28min.
  • Collections & Concurrency –> 2 lectures • 31min.
  • Problems & Assignments –> 2 lectures • 10min.

Auto Draft

Requirements

Welcome to the Java concurrency course. In this course, you will get familiar with the concepts of java multithreading and how it is used to build modern concurrent application. Why learn java concurrency?. The concepts that you will learn from this course can be applied to all the programming languages which provide concurrency support. Whether you are beginner or seasoned programmer, you will definitely learn something from this course. Java is the most widely used language from server to mobile phones.

This course will teach you how to think in concurrency. By completing this course, you will be able to get good hands on java multithreading. By the end of this course, you will acquire all the necessary skills to work on a project which requires multithreading and java concurrency.

This course explains the concept of concurrency and its related features in depth. If you come from other programming languages it’s better to learn the basics of java and it’s syntax.

The followings are what you will get from this course.

  • understand the concept of concurrency
  • how to use java concurrency framework to build simple application
  • how cpu and memory plays a role in java multithreading.
  • you will get clear understanding of when and where to use lock
  • understand the difference between blocking and non blocking algorithms
  • how to build your own locks using abstractqueuedsynchronizer
  • understand what is immutability
  • understand the role of atomic classes

 

Get Tutorial