Di kotlinx.coroutinesperpustakaan Anda dapat memulai coroutine baru menggunakan launch(dengan join) atau async(dengan await). Apa perbedaan di antara
Di kotlinx.coroutinesperpustakaan Anda dapat memulai coroutine baru menggunakan launch(dengan join) atau async(dengan await). Apa perbedaan di antara
Saya membaca Kotlin Coroutine dan tahu bahwa ini didasarkan pada suspendfungsi. Tapi apa suspendartinya? Coroutine atau fungsi ditangguhkan? Dari https://kotlinlang.org/docs/reference/coroutines.html Pada dasarnya, coroutine adalah komputasi yang dapat ditangguhkan tanpa memblokir utas Saya...
Saya telah membaca dokumen kotlin , dan jika saya mengerti dengan benar, kedua fungsi Kotlin berfungsi sebagai berikut: withContext(context): mengganti konteks coroutine saat ini, ketika blok yang diberikan dijalankan, coroutine beralih kembali ke konteks sebelumnya. async(context): Memulai...
Saat ini saya mencoba meningkatkan leverage kotlin lebih banyak. Tapi saya menghadapi masalah: ketika menggunakan moshi atau okhttp di dalam coroutine ini saya mendapat peringatan: "panggilan metode pemblokiran yang tidak pantas" Apa cara terbaik untuk memperbaikinya? Aku benar-benar tidak ingin...
Saya punya beberapa pertanyaan tentang Kotlin Flow Saya dapat mengamati LiveData dari beberapa Fragmen. Bisakah saya melakukan ini dengan Flow? Jika ya lalu bagaimana? Kami dapat memiliki beberapa LiveData dari satu LiveData menggunakan map& switchMap. Apakah ada cara untuk memiliki beberapa...
Pembaruan: Ini berfungsi jika saya pertama kali menjalankan coroutine tanpa batas waktu dan kemudian dengan TimeTime. Tetapi jika saya menjalankan coroutine withTimeout terlebih dahulu maka itu memberi saya kesalahan. Hal yang sama berlaku untuk Async juga. Saya membuat aplikasi multiplatform demo...
Apakah Kotlin coroutine memberikan jaminan "terjadi sebelum"? Sebagai contoh, apakah ada jaminan "terjadi sebelum" antara menulis ke mutableVardan selanjutnya membaca (berpotensi) utas lain dalam kasus ini: suspend fun doSomething() { var mutableVar = 0 withContext(Dispatchers.IO) { mutableVar...
Di Google I / O terakhir, Jose Alcerreca dan Yigit Boyar memberi tahu kami bahwa kami tidak boleh lagi menggunakan LiveData untuk mengambil data. Sekarang kita harus menggunakan fungsi menangguhkan untuk pengambilan satu-jepretan dan menggunakan Aliran Kotlin untuk membuat aliran data. Saya setuju...
Kecuali untuk blok tempat saya mendeklarasikan tanda tangan, semua blok memiliki nilai identitas yang sama, dan klaim untuk dideklarasikan pada baris 1 di mana pun itu terjadi. Adakah yang bisa menjelaskan mengapa ini terjadi? say 「Let's look at some blocks…」; if True { &?BLOCK.say; } while...