Basic
See https://michaelscodingspot.com/c-deadlocks-in-depth-part-1/
Tips
- Use dedicated lock object
- Keep lock object private inside a single class and do NOT pass it around outside
- Avoid triggering event from inside a lock
See https://michaelscodingspot.com/c-deadlocks-in-depth-part-1/