我知道这是一个热门话题,有很多问题和答案,但我仍然找不到以下问题的解决方案:
我有一个多标签应用程序。每个选项卡上都有一个 Webbrowser 控件。由于网络浏览器为每个新选项卡占用更多内存并且它们不会在选项卡关闭时释放此内存,因此我决定在选项卡关闭事件处理程序中创建一个 Webbrowser.Dispose()。这帮助我解决了内存泄漏问题。关闭后,所有使用的 RAM 现在都是空闲的。
但这引起了一个新问题:在第一个 Dispose() 之后,似乎所有其他 Webbrowser 对象的会话都被破坏了。通常我只登录到第一个网络浏览器。如果我添加几个标签,我通常会自动登录。在第一次 Dispose() 之后,这不再起作用,我必须在每个新选项卡上登录。
我试图保留旧的 cookie 并使用新的网络浏览器再次发送它们,但这并没有解决问题。似乎被摧毁了。