Tasks + solutions
- laboratory 1: Race conditions
- laboratory 2: Java monitors, binary semaphores, counting semaphores, shared resources
- laboratory 3: Producent-comsumer problem, pipeline
- laboratory 4: Producent-comsumer problem, Java Concurrency Library
- laboratory 5: Readers–writers problem, fine-grained locking
- laboratory 6: Dining philosophers problem
- laboratory 7: Active-object pattern
- laboratory 8: Executor pattern, Future pattern
- laboratory 9: JavaScript - async/await, promise, waterfall, callbacks, execution model
- laboratory 10: Trace theory, Foata normal form, Diekiert graph, dependency and independency relations
- laboratory 11: Automation of laboratory 10
- laboratory 12: Petri nets
- laboratory 13: CSP