suspend функция?Suspend функция — это обычная Kotlin функция, помеченная модификатором suspend. Она сигнализирует, что функция может приостановить выполнение корутины в определённой точке и возобновить позже — без блокирования основного потока.
Suspend функции можно вызывать только из:
launch, async или runBlockingsuspend fun fetchData(): String {
delay(1000) // приостанавливает, не блокирует поток
return "Result"
}
// Должна вызываться из контекста корутины
viewModelScope.launch {
val result = fetchData()
}
Модификатор suspend позволяет писать неблокирующий асинхронный код, который выглядит и читается как синхронный. Это избавляет от цепочек колбэков и делает сложную асинхронную логику проще для написания, чтения и поддержки.
Suspend-функции можно безопасно вызывать из обычных синхронных функций, если обернуть синхронную функцию в coroutine builder, например launch.
Новый — ещё не проверен сообществом
Вы