如何从 Kotlin 协程返回值

package com.example.test_compose.ui

import android.util.Log
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
import kotlinx.coroutines.ExperimentalCoroutinesApi
import kotlinx.coroutines.async
import kotlinx.coroutines.delay

@OptIn(ExperimentalCoroutinesApi::class)
class MainViewModel : ViewModel() {
    private val TAG = "MainViewModel"

    init {
        val result = viewModelScope.async {
            delay(3000)
            true
        }
        result.invokeOnCompletion {
            if (it == null) {
                Log.e(TAG, "init:${result.getCompleted()} ")
            }
        }
    }
}

过3s 会返回true

猜你喜欢

转载自blog.csdn.net/mp624183768/article/details/128501641