This repository contains work from the theory of concurrent computing classes at the University of Science and Technology in Cracow (AGH Kraków).
The subject obtains the following topics:
- How to implement binary semaphores and counting semaphores in java using wait() and notify() and synchronization block
- Thread Synchronization and a race problem
- Implementation of condition wait
- Producers and Consumers Problem
- Buffer implementation
- Pipeline computing with buffer
- Compare Java Concurrency Utilities and standard java solution at produces and consumers problem.
- The Five Philosophers problem (three different solutions)
- The readers-writers problem.
- Fine grained locking
- Active Object Pattern
Radosław Kopeć
- Java 14
- Java Concurrency Utilities
- Labolatory 1
- raport
- Creating threads only with use while(true) and volatile
- Labolatory 2
- raport
- implementation of binary semaphores and counting semaphores in java by using wait(), notify(), and synchronization block only.
- Labolatory 3
- raport
- Producers and Consumers Problem/ Buffer implementation
- Implementation of condition wait.
- Pipeline computing with buffer
- Labolatory 4
- raport
- Compare Java Concurrency Utilities and Standard java solution at produces and consumers problem. Implementation with 3D charts drawing, time measurement.
- Labolatory 5
- raport
- The readers-writers problem.
- Fine grained locking
- Compare the fine grained locking with the one lock for one list.
- Labolatory 6
- The Five Philosophers problem (three different solutions)
- Compare solutions above.
- Labolatory 7
- The Active Object Pattern to solve producers and consumers problem