Learn to write correct and efficient concurrent and parallel software using Java on shared-memory multicore hardware. Covers basic and advanced concepts, performance, and debugging tools.
University CoursesJavaProgramming
Introduction
In this MSc course you learn how to write correct and efficient concurrent and parallel software, primarily using Java, on standard shared-memory multicore hardware.
Highlights
Covers basic mechanisms such as threads, locks and shared memory as well as more advanced mechanisms such as parallel streams for bulk data, transactional memory, message passing, and lock-free data structures with compare-and-swap
Covers concepts such as atomicity, safety, liveness and deadlock
Covers how to measure and understand performance and scalability of parallel programs
Covers tools and methods to find bugs in concurrent programs
Recommendation
This course is designed for students who want to learn how to write correct and efficient concurrent and parallel software using Java on shared-memory multicore hardware. It covers both basic and advanced concepts, and provides practical experience through exercises and assignments.
How GetVM Works
Learn by Doing from Your Browser Sidebar
Access from Browser Sidebar
Simply install the browser extension and click to launch GetVM directly from your sidebar.
Select Your Playground
Choose your OS, IDE, or app from our playground library and launch it instantly.
Learn and Practice Side-by-Side
Practice within the VM while following tutorials or videos side-by-side. Save your work with Pro for easy continuity.