İçeriğe geç

Asenkron üzerinde senkron bekleme (ARCH8023)

Anahtar kotlin.async.sync-over-async · Önem error · Kategori async

main fonksiyonları, testler ve bloklayan çerçeve sözleşmeleri (Interceptor.intercept) dışındaki runBlocking kullanımını işaretler - çağıran iş parçacığını bloklar ve tek iş parçacıklı dispatcher’larda kilitlenmeye yol açar.

fun load(): User = runBlocking { repository.load() }
suspend fun load(): User = repository.load()

Çağıranı suspend yapın ya da yalnız en dış kenarda köprüleyin (main, test, askıya alma sunmayan bir framework geri çağrısı).