public boolean waitUntilDone(long timeout, TimeUnit unit) throws InterruptedException {
		lock.lockInterruptibly();
		try {
			tracker.waitUntilDone(timeout, unit);
			return tracker.isDone();
		}
		finally {
			lock.unlock();
		}
	}
Cancels all running tasks and disposes of the internal thread pool if it is a private
pool.
Ghidra/Framework/Generic/src/main/java/generic/concurrent/ConcurrentQ.java