1
A
回答
3
可以为了做到这一点扩展Queue类。
例如:
public class MaxQueue : Queue
{
private int maxItems;
public MaxQueue(int maxItems)
{
this.maxItems = maxItems;
}
public override void Enqueue(object obj)
{
if(Count == maxItems)
{
Dequeue();
}
base.Enqueue(obj);
}
}
(这个例子是非常幼稚它不是线程安全的,它不检查maxItems至少1.基于队列所以你放心知道你已经将第一个项目加入了它)
1
.NET中没有提供circular/cyclic buffer实现的现有集合。你将不得不自己推出。
另外,参阅所以这里一个相关的问题:How would you code an efficient Circular Buffer in Java or C#
相关问题
- 1. EclipseLink避免收集持久/删除
- 2. 滚动表格以避免溢出
- 3. 避免溢出
- 4. 避免溢出
- 5. 删除项目收集视图
- 6. 滚动到溢出项目:自动格
- 7. 避免算术溢出
- 8. 在python避免溢出3.5
- 9. 避免浮点溢出?
- 10. Java:避免阶乘溢出
- 11. 如何删除溢出:自动属性?
- 12. 删除来自空收集表单项目的空值
- 13. 可以从Eclipse中自动删除已删除的项目吗?
- 14. 溢出-X,以避免任何水平滚动浏览器
- 15. 动态减少字体大小,以避免溢出
- 16. 避免位图被自动回收 - Android
- 17. 删除/重构,以避免N + 1
- 18. 如何避免拆分字符串时删除空的项目?
- 19. 避免使用“删除日期”检索项目
- 20. 删除删除特定集合项目
- 21. 替代项目以避免冗余
- 22. GWT - 避免收听活动
- 23. 避免或StgOpenStorage删除锁()
- 24. 如何避免/删除invalidcastexception
- 25. 避免获取删除NSManagedObjects
- 26. 避免jquery ajax删除#
- 27. 避免集合函数的算术溢出
- 28. 避免溢出的盒子下面
- 29. 如何避免快速模幂溢出
- 30. PHP的Mysql:避免浏览量溢出?
它被称为循环缓冲区。 – AraK 2010-03-07 11:02:48
以及那不能回答我的问题。 – Tomasi 2010-03-07 11:03:30
这就是为什么它是一个评论:) – AraK 2010-03-07 11:07:19