public void TestCpuWorkerSignalStop() { CpuWorker worker = CreateCpuWorker(); worker.Start(); worker.SignalStop(); Assert.AreEqual(worker.State, ExecutionState.Stopped); worker.SignalStop(); Assert.AreEqual(worker.State, ExecutionState.Stopped); worker.Start(); Assert.AreNotEqual(worker.State, ExecutionState.Stopped); worker.SignalPause(); worker.SignalStop(); Assert.AreEqual(worker.State, ExecutionState.Stopped); worker.Start(); worker.SignalPause(); worker.SignalResume(); worker.SignalStop(); Assert.AreEqual(worker.State, ExecutionState.Stopped); }
private static CpuWorker CreateCpuWorker() { var @operator = CreateOperator(); var worker = new CpuWorker(@operator); worker.LocalNetwork = @operator.Network; worker.LocalTrainingDataIterator = @operator.Trainer.TrainingDataIterator; worker.LocalOptimiser = @operator.Trainer.Optimiser; return(worker); }
public void TestCpuWorkerCreate() { IOperator @operator = new CpuMultithreadedOperator(10); CpuWorker worker = new CpuWorker(@operator, @operator.Handler, ThreadPriority.Normal); Assert.AreSame(@operator, worker.Operator); Assert.AreEqual(worker.ThreadPriority, ThreadPriority.Normal); Assert.AreSame(worker.Handler, @operator.Handler); worker = new CpuWorker(@operator); Assert.AreSame(worker.Handler, @operator.Handler); Assert.AreEqual(worker.State, ExecutionState.None); }
public void TestCpuWorkerSignalPause() { CpuWorker worker = CreateCpuWorker(); worker.Start(); worker.SignalPause(); Assert.AreEqual(worker.State, ExecutionState.Paused); worker.SignalPause(); Assert.AreEqual(worker.State, ExecutionState.Paused); worker.SignalStop(); Assert.AreNotEqual(worker.State, ExecutionState.Paused); Assert.Throws <InvalidOperationException>(() => worker.SignalPause()); Assert.AreNotEqual(worker.State, ExecutionState.Paused); }