[英]Memory Leak in IE WebBrowser Control
在C#中,我用作Web瀏覽器控件(Watin瀏覽器控件),我將此控件運行到主線程的另一個線程中。
幾個小時后,會產生內存泄漏。
還有另一篇文章(這里: 如何修復IE WebBrowser控件中的內存泄漏?或如何解決.NET Webbrowser控件中的內存泄漏? ),建議從KERNEL32.DLL
調用“ SetProcessWorkingSetSize
”。
解決方法是最小化Web瀏覽器控件的winform。
所以我的問題是:如果有另一種方法來解決這個問題? 如果沒有,如果我使用像mozilla-gecko這樣的替代網絡瀏覽器控件,我將解決這個內存泄漏問題。
解決方案是調用垃圾收集器並強制Windows操作系統清理內存。 例如最后你可以寫:
finally
{
GC.Collect();
GC.WaitForPendingFinalizers();
EmptyWorkingSet(GetCurrentProcess());
}
EmptyWorkingSet
強制操作系統清理內存。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.