我们有一个调用 .NET DLL 的 VB6 应用程序。有时,在 VB6 应用程序运行了很长时间并多次调用 .NET 代码之后,.NET 方面会抛出 OutOfMemory 异常,即使机器上有足够的可用内存。VB6 内存空间也没有接近极限。
.NET 端是否保留单独的内存池?或者它是 VB6 应用程序的内存池的一部分?
如果是分开的,有没有办法看它有多大?我的任务管理器中唯一的大内存项目是 SQL Server 和 VB6 应用程序(两者都是预期的)。
这种情况不会经常发生,但一旦发生,就很难确定系统为什么不分配更多内存。