Junior — Middle
Kako suspend funkcija obaveštava o svom privremenom zaustavljanju izvršavanja?
sobes.tech АИ
Одговор од АИ
Funkcija suspend u Kotlinu obaveštava o privremenom zaustavljanju izvršavanja pomoću mehanizma korutina. Kada se pozove suspend funkcija, izvršavanje može biti pauzirano bez blokiranja niti, a stanje funkcije se čuva u posebnom objektu nazvanom Continuation. Kada se funkcija zaustavi, ona vraća kontrolu pozivaocu, a nakon završetka asinhrone operacije, izvršavanje se nastavlja sa istog mesta.
Primer:
suspend fun fetchData(): String {
delay(1000) // pauzira korutinu na 1 sekundu
return "Podaci učitani"
}
Ovde, delay je suspend funkcija koja pauzira izvršavanje korutine bez blokiranja niti, i nastavlja je nakon 1 sekunde.