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.