有沒有辦法找出使用COM DLL的C#應用程序內的每個DLL的內存使用情況?或者,你會說什麼是最好的方法來找出爲什麼內存在使用com對象時呈指數增長(IE。COM對象是否有內存泄漏,或者是否有一些特殊的對象釋放到託管代碼中) /或如何做到這一點))。COM C#內存泄漏跟蹤
2
A
回答
2
你使用後發佈的COM對象(Marshal.ReleaseComObject
)?
你傳入/傳出呼叫的參數是什麼類型?
如果您沒有COM對象源代碼,並且想確定爲什麼它的「泄漏」,請運行COM對象outa proc,將WinDBG附加到進程並在內存分配API(HeapAlloc等)上設置斷點。 )。查看調用堆棧和分配模式。當然,你可以在管理方使用分析器,但如果你想知道發生了什麼,你將不得不讓你的手髒......
0
dotTrace岩石:http://www.jetbrains.com/profiler/
請記住,在.NET中所有的COM對象基本上是在心臟MarshalByRefObject的派生類,所以你應該能夠通過這樣的對象,尋找內存消耗作爲一個潛在的過濾器。
1
0
我想要做的第一件事是絕對肯定的是,我不會在任何地方泄漏引用,然後進入重現步驟的最小步驟(一個好的配置文件是必不可少的,我碰巧使用並推薦RedGate的它可以完成,並且值得發送示例代碼,將問題複製到COM對象的供應商,以便它們可以解決此問題(實際上,Crystal Reports的修補程序是由於其中的內存泄漏我發現:)
相關問題
- 1. 如何跟蹤COM內存泄漏
- 2. 跟蹤內存泄漏
- 3. 跟蹤z3內存泄漏
- 4. 跟蹤內存泄漏
- 5. Python內存泄漏跟蹤?
- 6. _CrtSetBreakAlloc跟蹤COM對象中的內存泄漏
- 7. 跟蹤Outlook 2007中的內存泄漏
- 8. 內存泄漏,跟蹤時間長
- 9. Android中的內存跟蹤/泄漏
- 10. Android如何跟蹤內存泄漏?
- 11. 很難跟蹤內存泄漏
- 12. 跟蹤valgrind內存泄漏的提示
- 13. 使用node-memwatch跟蹤內存泄漏?
- 14. 使用_crtBreakAlloc跟蹤內存泄漏,_CRTDBG_MAP_ALLOC
- 15. C#GC的用法以及如何跟蹤內存泄漏
- 16. C#內存泄漏,跟蹤技術和工具
- 17. 跟蹤連接泄漏
- 18. 內存泄漏C
- 19. C#內存泄漏?
- 20. C#內存泄漏?
- 21. 內存泄漏-c
- 22. 內存泄漏C#
- 23. 內存泄漏C++
- 24. 如何使用codeduitests跟蹤內存泄漏?
- 25. 跟蹤node.js中的內存泄漏 - v8 profiler vs htop
- 26. 瞭解Python的gc.garbage(用於跟蹤內存泄漏)的問題
- 27. 使用儀器跟蹤內存泄漏Xcode5和iOS7
- 28. 如何跟蹤有多少內存泄漏?
- 29. 如何跟蹤應用程序內存泄漏?
- 30. 在Android中跟蹤內存泄漏的較新工具
希望,一個分析器會給你你需要的信息,更深。 – 2009-02-05 22:08:25