Junior — Middle
Come comunica una funzione suspendida la sua interruzione temporanea dell'esecuzione?
sobes.tech AI
Risposta dell'AI
La funzione suspend in Kotlin segnala la sua pausa temporanea nell'esecuzione tramite il meccanismo delle coroutine. Quando si chiama una funzione suspend, l'esecuzione può essere sospesa senza bloccare il thread, e lo stato della funzione viene conservato in un oggetto speciale chiamato Continuation. Quando la funzione si sospende, restituisce il controllo al chiamante, e dopo il completamento dell'operazione asincrona, l'esecuzione riprende dallo stesso punto.
Esempio:
suspend fun fetchData(): String {
delay(1000) // sospende la coroutine per 1 secondo
return "Dati caricati"
}
Qui, delay è una funzione suspend che sospende l'esecuzione della coroutine senza bloccare il thread, e la riprende dopo 1 secondo.