Sobes.tech
Junior — Middle

Quais são os tipos de vazamentos de memória e como identificá-los?

sobes.tech IA

Resposta da IA

Existem vários tipos de fugas de memória no iOS:

  • Referências cíclicas (ciclos de retenção): quando dois objetos mantêm-se mutuamente através de referências fortes, impedindo a sua libertação.
  • Fugas devido ao uso incorreto de delegados: se o delegado for declarado como referência forte, pode causar um ciclo.
  • Fugas devido a recursos não libertados: por exemplo, temporizadores, observadores de notificações que não foram removidos.

Para detectar fugas, usam-se ferramentas do Xcode:

  • Instruments (Leaks e Allocations) — permite rastrear objetos que não são libertados.
  • Memory Graph Debugger — visualiza as ligações entre objetos e ajuda a encontrar ciclos.

Exemplo: se na classe ViewController há uma referência forte a um temporizador que não é parado nem nulificado, isso pode levar a uma fuga.