public void SimpleTaskWithDelayCancel() { JTaskManager.ClearAllTask(); JBaseTask scheduleTask = new JSimpleTask(() => { Console.WriteLine("After 1sec"); }, 1); JTaskManager.AddTask(scheduleTask); int count = 0; Console.WriteLine("start"); while (!JTaskManager.IsAllDone()) { count++; Console.WriteLine(".."); JTaskManager.Update(0.1f); if (count == 5) { JTaskManager.RemoveTask(scheduleTask._ticket); } } Assert.AreEqual(scheduleTask.Status, ETaskStatus.Processing); Assert.AreEqual(count, 5); }
public void RepeatTaskLongRun() { JTaskManager.ClearAllTask(); int runningCount = 0; int frameCount = 0; JBaseTask simpleTask = new JSimpleTask(() => { runningCount++; Console.WriteLine("Interval Doing: " + runningCount + " Frame:" + frameCount); }, 1); JBaseTask repeatTask = new JRepeatTask(simpleTask, 1); JTaskManager.AddTask(repeatTask); Console.WriteLine("start"); while (!JTaskManager.IsAllDone()) { frameCount++; Console.WriteLine(".."); JTaskManager.Update(0.1f); if (runningCount >= 2) { break; } } //Console.WriteLine(repeatTask.Status); //Console.WriteLine(frameCount); Assert.AreEqual(runningCount, 2); Assert.AreEqual(frameCount, 40); }
public void SimpleTaskWithDelay() { JTaskManager.ClearAllTask(); JBaseTask scheduleTask = new JSimpleTask(() => { Console.WriteLine("After 1sec"); }, 1); JTaskManager.AddTask(scheduleTask); int count = 0; Console.WriteLine("start"); while (!JTaskManager.IsAllDone()) { count++; Console.WriteLine(".."); JTaskManager.Update(0.1f); } Assert.AreEqual(scheduleTask.Status, ETaskStatus.Done); Assert.AreEqual(count, 10); }