https://jjongs2.github.io/posts/ics-lecture-25/
Lecture 25: Synchronization: Advanced - 고볼