Junior — Middle
Можете ли објаснити шта су suspend функције у Kotlin-у и како раде?
sobes.tech АИ
Одговор од АИ
Suspend-функции в Kotlin — это функции, которые могут быть приостановлены и возобновлены позже без блокировки потока. Они используются для написания асинхронного и неблокирующего кода.
Основные моменты:
- Обозначаются ключевым словом
suspend. - Могут вызываться только из других suspend-функций или корутин.
- Позволяют выполнять долгие операции (например, сетевые запросы) без блокировки основного потока.
Пример:
suspend fun fetchData(): String {
delay(1000) // приостанавливает выполнение на 1 секунду без блокировки потока
return "Данные получены"
}
Здесь delay — это suspend-функция, которая приостанавливает корутину, позволяя другим задачам выполняться в это время.