Liberando recursos da interface do usuário do iOSWebView após o uso

A tela inicial do aplicativo (e, portanto, a primeira vista por todos os usuários) possui várias seções, a maioria das quais contém diferentes visualizações da web que o usuário pode querer abrir. Isso aumenta o uso da memória de apenas 26 MB para até 85 MB ou mais (depois de abrir todas as diferentes visualizações da web).

O problema que descobrimos é que, uma vez fechados, todos os recursos das páginas da Web parecem mantidos na memória (a memória usada mal diminui alguns MB, talvez).

Gostaria de liberar os recursos que a visualização na web teve que abrir porque, mais tarde, há uma seção muito exigente do nosso aplicativo que precisa de muita memória e trava completamente o aplicativo se você estiver navegando por várias dessas visualizações na web antes.

Encontrei várias opções na internet para tentar, mas nenhuma delas funcionou até agora. Coisas como:

// Try to clean used webview

[self.webView loadHTMLString:@"" baseURL:nil];
[self.webView stopLoading];
self.webView.delegate = nil;
[self.webView removeFromSuperview];
self.webView = nil;

Eles não fizeram absolutamente nenhum efeito no uso da memória. Falta alguma coisa aqui? Eu já verifiquei que não tenho vazamentos que manteriam o WebView aberto. Já estou liberando a única referência a ele que tenho (self.webView = nil;)

Editar: Acabei de criar um projeto do zero, adicionei uma visualização na web e um botão que carrega uma web diferente toda vez que clico nele, o que aumenta o uso de memória. Também adicionei um botão que destruirá a visualização na web quando clicada e, adivinhe, a memória permanece a mesma, como se ela não estivesse liberando recursos.

questionAnswers(3)

yourAnswerToTheQuestion