https://hackershare.dev/bookmarks/733709
4种Golang并发操作中常见的死锁情形