////private DbgVerbCounter dbgVerbCounter = new DbgVerbCounter(); /// <summary> /// Initializes a new instance of the Scheduler class. /// </summary> /// <param name="jobParallelism"> /// Degree of parallel execution to allow. /// </param> /// <param name="rejectCachedFailures"> /// Whether to reject cached failures. /// </param> public Scheduler(int jobParallelism) { this.targets = new HashSet <BuildObject>(); this.waitIndex = new WaitIndex(); this.repository = BuildEngine.theEngine.Repository; this.unrecordableFailures = new Dictionary <IVerb, Disposition>(); this.verbToposorter = new VerbToposorter(); this.verbRunner = new VerbRunner(this.verbToposorter, jobParallelism); this.resolvedVerbs = new HashSet <IVerb>(); this.completedVerbs = new HashSet <IVerb>(); this.outputToVerbMap = new Dictionary <BuildObject, IVerb>(); this.knownVerbs = new HashSet <IVerb>(); this.depCache = new DependencyCache(); this.rejectCachedFailures = true; // this is now permanent. The code path for caching Failure results has rotted. }
public Scheduler(int jobParallelism, IItemCache itemCache, bool rejectCachedFailures) { targets = new HashSet <BuildObject>(); waitIndex = new WaitIndex(); nuObjContents = BuildEngine.theEngine.getNuObjContents(); resultCache = new ResultCache(itemCache, nuObjContents); unrecordableFailures = new Dictionary <IVerb, Disposition>(); this.hasher = BuildEngine.theEngine.getHasher(); verbToposorter = new VerbToposorter(hasher); asyncRunner = new AsyncRunner(verbToposorter, jobParallelism); resolvedVerbs = new HashSet <IVerb>(); completedVerbs = new HashSet <IVerb>(); depCache = new DependencyCache(); this.rejectCachedFailures = rejectCachedFailures; }
////private DbgVerbCounter dbgVerbCounter = new DbgVerbCounter(); /// <summary> /// Initializes a new instance of the Scheduler class. /// </summary> /// <param name="jobParallelism"> /// Degree of parallel execution to allow. /// </param> /// <param name="rejectCachedFailures"> /// Whether to reject cached failures. /// </param> public Scheduler(int jobParallelism) { this.targets = new HashSet<BuildObject>(); this.waitIndex = new WaitIndex(); this.repository = BuildEngine.theEngine.Repository; this.unrecordableFailures = new Dictionary<IVerb, Disposition>(); this.verbToposorter = new VerbToposorter(); this.verbRunner = new VerbRunner(this.verbToposorter, jobParallelism); this.resolvedVerbs = new HashSet<IVerb>(); this.completedVerbs = new HashSet<IVerb>(); this.outputToVerbMap = new Dictionary<BuildObject, IVerb>(); this.knownVerbs = new HashSet<IVerb>(); this.depCache = new DependencyCache(); this.rejectCachedFailures = true; // this is now permanent. The code path for caching Failure results has rotted. }