我想用
创建一个List<MyClass>
class MyClass
{
public string Name;
public List<MyClass> Children;
}
用户决定应创建多少个对象。根据树的深度(列表中的所有对象具有相同数量的子节点),我在列表中使用不同数量的对象时会出现内存不足异常。是否有可能近似最大数量的物体?
答案 0 :(得分:0)
是否有可能近似最大数量的物体
没有。没有这种可能性。
事件如果您可以为托管对象计算sizeof
之类的内容,并获得可用内存量,则无法依赖此数字,因为托管代码对托管堆中的当前内存碎片一无所知,它无法阻止系统中的其他进程(以及当前进程中的其他线程)从系统查询新的内存分配。