protected boolean validate(Lock lock) {
		if (!isInvalid()) {
			return !deleted;
		}
		lock.acquire();
		try {
			return checkIsValid();
		}
		finally {
			lock.release();
		}
	}
This method provides a cheap (lock free) way to test if an object is valid. If this object is
invalid and not deleted, then the lock will be used to refresh as needed.  A deleted object
will not be refreshed.

@param lock the lock that will be used if the object needs to be refreshed.
@return true if object is valid or false if deleted
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/database/DatabaseObject.java