Reentrant (Recursive) Async Lock Is Impossible in C#
maximcus.medium.com