并发编程-C#BlockingCollection<;T>;类统计信息

本文关键字:统计 信息 gt 编程 lt 并发 -C#BlockingCollection | 更新日期: 2023-09-27 17:58:51

我正在使用一个无界阻塞集合,使用ConcurrentQueue作为基础集合,作为程序的主要组件之一
我正在寻找一种很好的方法来收集有关阻塞集合的消费行为的统计信息,例如,一天中队列中的最大项目数,或者当队列建立时阻塞集合调整大小时
我是否遗漏了什么,或者我是否需要编写一个重写某些方法的继承类,以便向其中添加更多的使用统计信息?

并发编程-C#BlockingCollection<;T>;类统计信息

您没有错过任何东西。你必须自己实施。继承类可能没有帮助,因为BlockingCollection的方法都不是虚拟的。

相反,您必须编写一个包装器,并始终通过该包装器访问集合。或者,您可以生成一个小线程,定期轮询集合并报告其当前状态。