我有一个通过COM组件(使用vb6创建)的包装管理应用程序(.net),其中Com组件也使用本机C++ dll。托管+非托管应用程序导致内存泄漏
应用程序作为后台进程运行,应该连续运行24 X 7. 应用程序在特定时间内运行正常,但在一段时间后崩溃。 可能的原因可能是C++ dll或com组件中的漏洞。有很多COM和C++ dll的代码。
因为我不熟悉COM和C++,我试图从托管应用程序解决问题。我正在考虑解决这个问题:如果托管应用程序开始消耗大量内存,那么我将重新启动托管应用程序。
1)如何以编程方式监视应用程序使用的总内存(managed + unmanaged)。
2)重新启动托管应用程序还释放非托管资源。
3)有没有其他的替代方法。
4)什么是最好的调试工具,用于监控也使用非托管资源的托管应用程序。
如果我不清楚我的解释,然后再问我一次。
任何帮助将不胜感激。