In the first semester of 2014 I took the Swinburne University unit Advanced .Net Programming taught by his excellence, Dr Andrew Cain. This was an incredibly interesting class, entirely focused on programming for concurrency (multithreading), in C#. We were each required to create many small utilities that would provide functionality allowing you to easily manage threads. Later, we each also designed and implemented solutions to some concurrency problem scenarios from The Little Book of Semaphores, including some classics.
Each source file includes a detailed description of its purpose and functionality, and is usually thoroughly documented throughout. For those programs where there are many files, the main description will be in MainClass.cs
.
- Concurrency utilities
- Concurrency utility tests
- Classical synchronization problems
- Less classical synchronization problems
- Active Objects: Zork Server (basic, one player, multi-user)
- [Explanations related to design forces](Design forces in concurrent programming.md)
Included are many coloured log files demonstrating the programs' functionality and output:
- Concurrency utilities
- Classical synchronization problems
- Less classical synchronization problems
- Active Objects: Zork Server (basic, one player, multi-user)