Programming Fundamentals 3
This course teaches concepts and methods of concurrent and parallel programming, with particular focus on multi-threading, safety/liveness hazards, and synchronization. The course also covers patterns, constructs, and classes offered by the Java language and the Java class library to implement thread-safe concurrent applications. The presented techniques enable the development of scalable, multi-threaded Java applications capable of exploiting modern multicore hardware.
- Understand the concepts of concurrent and parallel programming.
- Design and develop concurrent Java applications that are efficient and scalable.
Lectures and exercises on the course topics.
The examination consists of a final exam.