Async-friendly read-write lock

Thanks, that will be useful as a building block or an inspiration.

Anything similar, but with a ready-to-use read-write lock?