This macro validates that a given lock is taken by using
pthread_mutex_trylock().
The use of this macro is disouraged in hot paths for performance
reasons. It is meant to catch errors in "cold" code path (e.g. error
handling) where the additional safety it provides has no material
effect on performance.