protected void _Remove(CacheCommand cmd) { CacheCommand previous = null; CacheCommand next = this; while (next.Next != null) { if (next == cmd) { previous.Next = next.Next; next.Release(true); break; } previous = next; next = next.Next; } }