/// <summary> /// /// </summary> protected virtual void UpdatePendingExecution() { ExecutionEntity entity; while (_pendingEntities != null && (entity = PopNextExecutionEntity()) != null) { TracerHelper.TraceEntry(" pending [" + _pendingEntities.Count + "] started executioners [" + _threadPool.ActiveRunningThreadsCount.ToString() + "]"); ThreadPoolFastEx pool = _threadPool; if (pool != null) { pool.Queue(new GeneralHelper.GenericDelegate <ExecutionEntity>(worker_DoWork), entity); } } }
/// <summary> /// Redefine needed so that we can construct and pass anonymous delegates with parater. /// No need to specify the Value parameter(s), since they can be recognized automatically by compiler. /// </summary> public static void FireAndForget <Value>(GeneralHelper.GenericDelegate <Value> d, params object[] args) { _threadPoolEx.Queue(d, args); }