Junior — Middle
¿En qué contexto o bajo qué circunstancias se llama al método deinit en Swift?
sobes.tech AI
Respuesta de la IA
El método deinit en Swift se llama automáticamente antes de que una instancia de clase sea eliminada de la memoria. Es un destructor que permite liberar recursos, cerrar archivos, cancelar observadores y realizar otra limpieza.
deinit se llama en las siguientes circunstancias:
- Cuando el contador de referencias a un objeto alcanza cero (ARC — gestión automática de memoria).
- Antes de que el objeto sea desinicializado y la memoria sea liberada.
Ejemplo de uso de deinit:
class FileHandler {
let fileName: String
init(fileName: String) {
self.fileName = fileName
print("Archivo abierto: \(fileName)")
}
deinit {
print("Archivo cerrado: \(fileName)")
}
}
func ejemplo() {
let handler = FileHandler(fileName: "data.txt")
// handler se usa dentro de la función
} // aquí handler sale del ámbito, se llama a deinit
Por lo tanto, deinit es útil para gestionar recursos y limpieza al destruir un objeto.