With lock timeout

I would move all the timeout stuff to the `_getLock` method.