public void TestCrossRunJobsWithFinalSingleBlockingRun() { _jobCount = 0; CrossRunJob._maxJobs = AsyncProcessor._maxWaitableHandles * 2 - 1; AsyncProcessor proc1 = new AsyncProcessor(); AsyncProcessor proc2 = new AsyncProcessor(); CrossRunJob job = new CrossRunJob(proc1, proc2); using ( proc1 ) { using ( proc2 ) { proc2.QueueJob(job); Thread.Sleep(1000); } } }
public void TestCrossRunJob() { _jobCount = 0; CrossRunJob._maxJobs = AsyncProcessor._maxWaitableHandles * 2 - 2; AsyncProcessor proc1 = new AsyncProcessor(); AsyncProcessor proc2 = new AsyncProcessor(); CrossRunJob job = new CrossRunJob(proc1, proc2); using ( proc2 ) { using ( proc1 ) { proc2.RunJob(job); } } if (_jobCount != CrossRunJob._maxJobs) { throw new Exception("TestCrossRunJob() failed. _jobCount = " + _jobCount); } }