開發中經常有任務隊列的設計,主要用於存儲待執行的任務。由於任務來源的多樣性,因此有時候需要一顆后悔葯,將隊列中某些待執行任務刪除。此時使用LinkedList比較合適。
public LinkedList<TaskInfo> taskInfos = new LinkedList<TaskInfo>(); public void RemoveTask(DateTime createtiem) { if (taskInfos.Count == 0) return; var curNode = taskInfos.First; while (curNode != null) { if (curNode.Value.Createtime == createtiem) { var rmNode = curNode; curNode = curNode.Next; zKInfos.Remove(rmNode); } else { curNode = curNode.Next; } } }