Bug 271799 Replace IBackgroundRunner/IRunnableWithProgress with equinox.concurrent APIs
These basic abstractions of "something I want to run", and "someone who can run things" tend to get reinvented in various components. We should consolidate on the simple low level Equinox APIs for consistency.
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/BackgroundRunnerFunction.java
public Object compute(IEclipseContext context, Object[] arguments) {
		return new IBackgroundRunner() {
			public void schedule(long delay, String name,
					final IRunnableWithProgress runnable) {
				new Job(name) {
					protected IStatus run(IProgressMonitor monitor) {
						return runnable.run(monitor);
					}
				}.schedule(delay);
			}
		};
	}
}