In this course, we will discuss Java Concurrent and Multithreaded Programming in detail. The course covers basic topics such as threads creation, synchronization, memory model and a happens-before relationship. There are lectures about standard Java classes that help to write complex concurrent programs. Also, there are advanced sections about concurrent algorithms, performance and monitoring.
Goals
- Java multithreaded programming
- Concurrency and threads synchronization
- Java basic and advanced synchronization primitives
- Parallel algorithms
- The java-util-concurrent package in detail
- Performance, testing and debugging of multithreaded applications
Prerequisites
- Knowledge of Java basics or experience with other object-oriented programming language
- Understanding of object-oriented programming concepts
- Understanding of standard data structures: list, array, set, map