Como gerenciar a memória para aplicativos ios
Video: Como liberar memória utilizada pelo WhatsApp no iPhone
Conteúdo
A maneira mais fácil de gerenciar a memória para aplicativos iOS é deixar o negócio de tempo de execução Objective-C com ele usando um sistema chamado de contagem de referência automático (ARC) - por favor, usá-lo. (ARC está disponível desde 2011 no Xcode 4.2 ou posterior.)
Video: Limpando a memória do seu iPhone ou iPad!
Quando iOS foi introduzido pela primeira vez, você tem que gerir manualmente memória, mantendo o controle do ciclo de vida dos objetos em seu programa. Você fez isso por dizer o sistema de execução Objective-C, quando a reter e quando liberar objetos, usando um esquema de Apple chamado Manual manter-release, que por sua vez utilizada como uma técnica conhecida contagem de referência.
Embora a memória gerenciamento manual é certamente um incômodo, é explicado aqui, porque você vai vê-lo em programas iOS mais antigos, assim você pode muito bem estar preparado. Aqui está o que você faz. Primeiro, crie uma classe que herda da NSObject classe raiz no âmbito Foundation. Sua classe, em seguida, herda três métodos de gerenciamento de memória:
reter
lançamento
disparo automático
Estes três métodos de tudo um manipular contador de referência no objeto que, essencialmente, diz o sistema de execução como muitos lugares em seu programa (ou outros objetos) querem manter uma referência para o objeto.
Aqui está como esta contagem de referência é gerido pelos iOS:
Toda vez que reter é chamado em um objeto de destino, sua contagem de referência é aumentada em um.
Video: iFILE - MELHOR GERENCIADOR DE ARQUIVOS PARA iPHONE, iPOD E iPAD (iOS 9)
Então, se cinco objetos chamar reter no objeto de destino, sua contagem de referência será de cinco (aliás, quando o objeto é alocado, o init automaticamente incrementa a contagem de referência).
Como eles param precisar o objeto de destino, os cinco objetos irá chamar release sobre o objeto. Cada versão de tempo é chamado, o contador de referências do objecto alvo é diminuído (por um).
Quando a contagem de referência torna-se zero (ou seja, quando o último objeto chama release), a memória do objeto é liberado pelo sistema.
O terceiro método - disparo automático - é chamado quando um objeto que você criou deve ser entregue a um fio e você quer o fio para cuidar de libertar o objeto quando o fio é feito.
Internamente, o sistema de arco utiliza o mesmo sistema de contagem de referência utilizada para a contagem de referência manual. No entanto, para usar ARC, você colocar o seu código nos blocos @autoreleasepool assim:
@autoreleasepool {... Seu código ...}
o compilador insere método de gerenciamento de memória apropriado chama o código para que qualquer coisa criada dentro deste bloco @autoreleasepool é liberada quando o programa sai do bloco.