04.经典并发设计

经典并发设计

1 How to implement a spinlock Github: link
2 How to implement a mutex Github: link
3 How to implement a condition variable Github: link
4 How to implement a reader-writer locker Github: link
5 How to implement a bounded blocking queue Github: link
6 Create two threads cooridnated by mutex in C Github: code-example/threads/thread_mutex.c
7 IPC: use shared memory without kernel copy Github: code-example/shared-memory
8 Support in-memory kv store transactions Github: link
9 Design a thread-safe Hashmap
10 Delayed task scheduling
11 Implement a lock-free queue with multiple readers/writers Github: link
12 Implement a api rate limiter with token bucket algorithm

编程挑战

Num Problem Summary
1 Semaphores to maintain the order Leetcode: Building H2O
2 Web Crawler Multithreaded LeetCode: Web Crawler Multithreaded
3 Print Zero Even Odd Leetcode: Print Zero Even Odd
4 Map/Reduce: scheduler + workers Leetcode: Fizz Buzz Multithreaded
5 Design Bounded Blocking Queue Leetcode: Design Bounded Blocking Queue
6 Avoid deadlock and starvation Leetcode: The Dining Philosophers
7 Claim ownerhip of a single resource LeetCode: Traffic Light Controlled Intersection