I'd also rather see this all inlined inside of `try_lock`