Я запускаю приложение Winform
с CefSharp
ChromiumWebBrowser
.
Я заметил, что после долгого времени запуска приложения требуется 2527 МБ (я беру эту информацию из Task Manager
)
Я сделал пару вещей, чтобы попытаться уменьшить его:
browser.BrowserSettings.ImageLoading = CefState.Disabled;
Для удаления фотографий.
CefSharpSettings.SubprocessExitIfParentProcessClosed = true;
Чтобы закрыть Subprocess
.
Обе эти вещи не помогли уменьшить память. Я также попытался проверить исходный код страницы ChromiumWebBrowser
, но при сохранении он занимает всего 2,7 МБ.
Есть идеи, в чем может быть проблема?
Как я могу попытаться уменьшить это больше?
EDIT
Это URL:
https://web.telegram.org/#/im?p=s1142373756_10629735016947342097
И я запускаю Javascript
метод в цикле:
private void ScrollTop()
{
if (!addScrollTop)
{
String js = "var script = document.createElement('script');" +
"script.type = 'text/javascript';" +
"script.text = \"function myFunctionScroll() { " +
"try {" +
"var element = document;" +
"var pageWrap = element.body.children[0];" +
"var history = pageWrap.getElementsByClassName('im_history_scrollable_wrap nano-content')[0];" +
"history.scrollTop = 0;" +
"} catch(err) { return err.message; }" +
"return 'done';" +
"}\";" +
"document.getElementsByTagName('head')[0].appendChild(script);";
getFromBrowser.ExecuteScriptAsync(js);
addScrollTop = true;
}
getFromBrowser.EvaluateScriptAsync("myFunctionScroll();").ContinueWith(x =>
{
Thread.Sleep(TimeSpan.FromSeconds(3));
ScrollTop();
});
}