zl程序教程

您现在的位置是:首页 >  后端

当前栏目

如何从 Kotlin 协程返回值

Kotlin 如何 返回值 协程
2023-09-27 14:27:35 时间
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