我们有一个调用.NET DLL的VB6应用程序。偶尔,在VB6应用程序运行了很长时间并且已经调用了.NET代码之后,事情的.NET方面会抛出OutOfMemory异常,即使计算机上有足够的可用内存。 VB6内存空间也没有接近它的限制。VB6应用程序调用.NET DLL OutOfMemory异常
.NET端是否保留单独的内存池?还是它的VB6应用程序的内存池?
如果它是分开的,有没有办法看到它有多大?我的任务管理器中唯一的巨大内存项目是SQL Server和VB6应用程序(都是预期的)。
这并不经常发生,但是当它发生时,很难确定系统为什么不分配更多内存。
不幸的是,这是一个单线程的应用程序。但我会用ANTS来看看事情。也许我有一些严重的内存碎片。 – 2009-11-12 17:14:50
Bugger,当父进程是加载.NET DLL的VB6可执行文件时,似乎很难使用ANTS。 – 2009-11-12 17:55:27