Утечка памяти QWebView

это код

QWebView* webView=new QWebView(this); 
 webView->page()->setLinkDelegationPolicy(QWebPage::DelegateAllLinks);
webView->load(QUrl(newsUrl));

После удаления любого случая будет некоторая память, которую нельзя удалить


person Silence    schedule 29.10.2012    source источник


Ответы (1)


Если вы установите родительский объект в конструкторе, используя этот

( QWebView* webView=new QWebView(this); )

Тогда вы не должны вызывать удаление напрямую, память будет освобождена, когда класс, который вы указали в качестве родителя, будет уничтожен.

Если вы хотите использовать удаление, просто создайте объект следующим образом:

QWebView* webView=new QWebView();
person opc0de    schedule 29.10.2012
comment
@Silence как понять, что есть утечка памяти? не могли бы вы быть более явным в вашей проблеме - person opc0de; 29.10.2012
comment
Я использую ОС Windows, пробег QWebView больше в пределах 20M не может быть удален. - person Silence; 29.10.2012
comment
@Silence, мой друг, когда вы вызываете удаление, память не освобождается в этот момент, это занимает некоторое время, и если другие объекты не созданы, они могут не освободиться до конца приложения. QWebView - это сложный класс 20 M в 2012 году больше не беспокоит. Память будет освобождена, если вы сделаете это правильно. - person opc0de; 29.10.2012
comment
@Silence память освобождается, но не в этот момент;) уничтожается только объект. Не беспокойтесь об этих проблемах, это проблемы ОС. Если вы освободили память, это больше не ваша забота, и удаление освободит память в момент какой-то момент ;) - person opc0de; 29.10.2012