如何在 C# 中实现可重用的对象池?
我正在通过流套接字处理大量数据。数据被使用并留给 GC 进行清理。我想预先分配一个可重用池并重用它以防止大量GC。
谁能帮助我吗?
I'm processing a lot of data off a streaming socket. The data is used and left for the GC to clean up. I want to allocate a reuseable pool upfront and reuse it to prevent lots of GCs.
Can anyone help me?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
恕我直言,这是一个有效的问题。特别是在使用经常分配缓冲区的套接字服务器时。它称为享元模式。
但我不会轻易决定使用它。
用法:
imho it's a valid question. Especially when working with socket servers where allocating buffers is done frequently. It's called flyweight pattern.
But I wouldn't take the decision to use it lightly.
Usage: