public Remove ( ProcessQueueHandle handle ) : void | ||
handle | ProcessQueueHandle | The handle to remove. |
Résultat | void |
public void ShouldRemoveHandleFromQueue() { var queue = new ProcessQueue(); Action action = () => { }; var handle1 = queue.Add(action); var handle2 = queue.Add(action); var handle3 = queue.Add(action); queue.Count.ShouldBe(3); queue.Remove(null); queue.Count.ShouldBe(3); queue.Remove(handle1); queue.Count.ShouldBe(2); queue.Contains(handle1).ShouldBe(false); handle2.Position.ShouldBe(0); handle3.Position.ShouldBe(1); queue.Remove(handle2); queue.Remove(handle3); queue.Count.ShouldBe(0); // -- queue.Remove(handle1); queue.Remove(handle2); queue.Remove(handle3); }
public void ShouldExposeTheNextItem() { var queue = new ProcessQueue(); queue.NextItem.ShouldBe(null); Action action = () => { }; var handle1 = queue.Add(action); var handle2 = queue.Add(action); var handle3 = queue.Add(action); queue.NextItem.ShouldBe(handle1); handle1.Process(); queue.NextItem.ShouldBe(handle2); queue.Remove(handle2); queue.NextItem.ShouldBe(handle3); handle3.Process(); queue.Count.ShouldBe(0); queue.NextItem.ShouldBe(null); }
public void ShouldDetermineIfHandleIsContainedWithinQueue() { var queue = new ProcessQueue(); Action action = () => { }; queue.Contains(null).ShouldBe(false); var handle1 = queue.Add(action); queue.Contains(handle1).ShouldBe(true); queue.Remove(handle1); queue.Contains(handle1).ShouldBe(false); }
public void ShouldReportIsQueued() { var queue = new ProcessQueue(); Action action = () => { }; var handle1 = queue.Add(action); var handle2 = queue.Add(action); var handle3 = queue.Add(action); handle1.IsQueued.ShouldBe(true); handle2.IsQueued.ShouldBe(true); queue.Remove(handle1); handle1.IsQueued.ShouldBe(false); handle2.IsQueued.ShouldBe(true); handle3.IsQueued.ShouldBe(true); }