Minor nit: I think it would be more rust-y if this were named `try_lock()`.