A simple java swing application that simulates particle collisions in a multi-threaded environment. The purpose of this project was to gain experience with handling coordination between multiple threads. Each particle is controlled by a separate thread and utilizes a resource-order locking scheme to coordinate collisions with other particles.
I created this project for my CSC 375 Parallel Programming course in Fall 2016.