Introduction
Learn parallel programming basics
()
What you should know
()
Java SDK and IntelliJ IDEA
()
1. Parallel Computing Hardware
Sequential vs. parallel computing
()
Parallel computing architectures
()
Shared vs. distributed memory
()
2. Threads and Processes
Thread vs. process
()
Thread vs. process: Java demo
()
Concurrent vs. parallel execution
()
Execution scheduling
()
Execution scheduling: Java
()
Thread lifecycle
()
Thread lifecycle: Java demo
()
Thread attributes: Java demo
()
Runnable vs. thread: Java demo
()
Daemon thread
()
Daemon thread: Java demo
()
3. Mutual Exclusion
Data race
()
Data race: Java demo
()
Mutual exclusion
()
Mutual exclusion: Java demo
()
Atomic variable: Java demo
()
Synchronized method: Java demo
()
Synchronized statement: Java demo
()
4. Locks
Reentrant lock
()
Reentrant lock: Java demo
()
Try lock
()
Try lock: Java demo
()
Read-write lock
()
Read-write lock: Java demo
()
5. Liveness
Deadlock
()
Deadlock: Java demo
()
Abandoned lock
()
Abandoned lock: Java demo
()
Starvation
()
Starvation: Java demo
()
Livelock
()
Livelock: Java demo
()
Ex_Files_Parallel_Programming_Java_1.zip
(328 KB)