Как освобождать память после webbrowser - C#
Формулировка задачи:
webbrowser в цикле несколько раз открывается следующим способом:
Как мне после получения url закрыть страницу, чтобы освободить оперативную память.
И при этом, после того как цикл начнётся заново, снова открыть страницу, считать url и закрыть страницу.
webBrowser1.Dispose(); не помогает. Более того, на втором круге цикла ошибка: "Доступ к ликвидированному объекту невозможен".
Цикл должен работать так:
Открыл страницу в webBrowser1
сохранил url
удалил/закрыл страницу и освободил оперативную память
Открыл страницу в webBrowser1
сохранил url
удалил/закрыл страницу и освободил оперативную память
Открыл страницу в webBrowser1
сохранил url
удалил/закрыл страницу и освободил оперативную память
И так далее пока цикл не закончится.
Листинг программы
- for (int f = 0; f < serach.data.Count; f++)
- {
- string id = serach.data[f].id;
- webBrowser1.Navigate("https://www.facebook.com/" + id);
- webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(go_get_url);
- while (webBrowser1.ReadyState != WebBrowserReadyState.Complete)
- {
- System.Windows.Forms.Application.DoEvents();
- }
Листинг программы
- private void go_get_url(object sender, WebBrowserDocumentCompletedEventArgs e)
- {
- true_id = e.Url.OriginalString;
- }
Решение задачи: «Как освобождать память после webbrowser»
textual
Листинг программы
- webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(go_get_url);
- for (int f = 0; f < serach.data.Count; f++)
- {
- string id = serach.data[f].id;
- webBrowser1.Navigate("https://www.facebook.com/" + id);
- while (webBrowser1.ReadyState != WebBrowserReadyState.Complete)
- {
- System.Windows.Forms.Application.DoEvents();
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д