0

我有一些小类,它们会非常频繁地创建和销毁,绝大多数时间它们会被短暂使用,然后超出范围。我希望将这些东西分配在堆栈上。

我不能使用结构,因为我的对象需要析构函数。我刚刚发现使用不安全的 stackalloc。在阅读之后,我发现 c# 不一定总是在堆上创建类。尽管如此,如果这些东西是在堆上创建的,它很可能会成为我的性能瓶颈。我应该相信 c# 在智能时将它们分配到堆栈上,还是应该我自己做?

4

1 回答 1

3

如果您不能或不想依赖 C# 内存优化并希望尽可能多地重用您的对象,您可以而且应该简单地实现对象池创建模式。

http://sourcemaking.com/design_patterns/object_pool

祝你好运

于 2012-11-20T19:42:13.043 回答