if (fDelegatedProgressMonitor != null && !fDelegatedProgressMonitor.isCanceled()) fDelegatedProgressMonitor.setCanceled(true);
if (fCountingProgressMonitor != null && !fCountingProgressMonitor.isCanceled()) fCountingProgressMonitor.setCanceled(true);
	public static void terminate() {				if (fgDeltaListener != null)			JavaCore.removeElementChangedListener(fgDeltaListener);		fgDeltaListener= null;				synchronized(fgLock) {			fgTerminated= true;			fgAsyncMode= false;						if (fDelegatedProgressMonitor != null && !fDelegatedProgressMonitor.isCanceled())				fDelegatedProgressMonitor.setCanceled(true);						if (fgTypeCacherThread != null) {				fgTypeCacherThread.abort();				try {					fgTypeCacherThread.join(1000);				} catch (InterruptedException e) {					JavaPlugin.log(e);				}				fgTypeCacherThread= null;			}		}	}