Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Advanced Multithreading Workshop

This project contains the workshop materials for the Advanced Programming multithreading session. It has been migrated from Gradle to Maven and structured for clear delivery.

Project Structure

  • src/main/java/workshop/exercises/: Unsolved skeleton files with clear TODO markers. These are the templates to distribute to students and use during live coding.
  • src/main/java/workshop/solutions/: Fully implemented reference solutions for grading and internal testing.

Exercises Covered

  1. LockWorkshop: Resolving race conditions on a shared mutable counter using explicit ReentrantLock coordination.
  2. SynchronizedWorkshop: Resolving race conditions on a shared mutable counter using intrinsic Java monitors (synchronized block).
  3. DeadlockPreventionWorkshop: Resolving a classic thread circular wait condition by enforcing global lock ordering based on unique Resource IDs.
  4. TaylorSeries: Implementing high-precision math with BigDecimal and calculating the Taylor series for $\sin(x)$ using a thread pool (ExecutorService).

Requirements

  • Java 17 or higher
  • Apache Maven 3.6+

How to Build and Run

To compile the project:

mvn clean compile

To execute any of the workshop main classes (for example, the Lock Workshop solution):

mvn exec:java -Dexec.mainClass="workshop.solutions.LockWorkshopSolution"

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages