何时使用 C# 进行对象池化?任何好的前...
维护一个经常使用的对象池并从池中获取一个而不是创建一个新对象的优点和缺点是什么?
最佳答案
我能想到的只有两种类型的资源通常被合并:线程和连接(即连接到数据库)。
这两者都有一个首要问题:稀缺性。
- 如果您创建了太多线程,上下文切换会浪费您所有的 CPU 时间。
- 如果您创建了过多的网络连接,那么维护这些连接的开销就会比这些连接应该做的任何工作都要多。
- 此外,对于数据库,出于许可原因,连接数可能会受到限制。
因此,您想要创建资源池的主要原因是您一次只能负担有限数量的资源。
关于c# - 什么时候去对象池?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2646364/