Sobes.tech
Junior — Middle

Em que momento ocorre a libertação de memória ocupada por um objeto?

sobes.tech IA

Resposta da IA

No iOS, a libertação de memória de um objeto ocorre no momento em que o contador de referências (retains count) desse objeto atinge zero. Isso significa que ninguém mais faz referência ao objeto, e o sistema pode liberar a memória que ele ocupa.

Nos aplicativos modernos, é utilizado o ARC (Contagem Automática de Referências), que aumenta e diminui automaticamente o contador de referências ao atribuir e remover referências ao objeto.

Exemplo:

class MyClass {}

var obj: MyClass? = MyClass() // contador de referências = 1
obj = nil // contador de referências = 0, o objeto é liberado

Assim, a liberação de memória ocorre imediatamente após o último proprietário do objeto deixar de fazer referência a ele.