Various Concurrent Programming Problems