Sobes.tech
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.