@Override
		public Function process(Function func, TaskMonitor monitor) throws Exception {
			monitor.setMessage("Decompiling " + func.getName());

			DecompileFunctionTask task = pool.get();
			try {
				task.decompile(func, monitor);
			}
			finally {
				pool.release(task);
			}

			return null; // we don't use results in the parallel implementation
		}
Run decompilation across multiple functions in a single program, distributing the task across
a specific number of threads
Ghidra/Features/BSim/src/main/java/ghidra/features/bsim/query/ParallelDecompileTask.java