Como gerenciar a memória para aplicativos ios

Video: Como liberar memória utilizada pelo WhatsApp no iPhone

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.


    Publicações relacionadas