fixed return type of try_lock