you're using tryLock but you don't verify that you actually obtained the lock before proceeding