2017-06-28 3 views
1

Dans la bibliothèque corotines Anko par kotlin, Dans cela, il ya une caractéristique bg() pour facilement exécuter votre code sur le thread d'arrière-plan. Dans ce type de retour est Différé. Alors qu'est-ce que Différé?Qu'est-ce qui est différé dans Anko coroutines kotlin?

refrence Lien

(1)https://github.com/Kotlin/kotlinx.coroutines/blob/master/kotlinx-coroutines-core/src/main/kotlin/kotlinx/coroutines/experimental/Deferred.kt

(2)https://github.com/Kotlin/anko/wiki/Anko-Coroutines#bg

fun getData(): Data { ... } 
    fun showData(data: Data) { ... } 

    async(UI) { 
     val data: Deferred<Data> = bg { 
     // Runs in background 
     getData() 
     } 

     // This code is executed on the UI thread 
     showData(data.await()) 
    } 
+0

'Deferred' est l'avenir/la promesse spécifique de Kotlin. Quelle est la question alors? –

+0

Ma question est ce qui est différé? –

Répondre

5

Je commencerais, si vous me excuser, par q uoting la première phrase de la documentation sur Deferred classe du premier maillon de la question:

valeur différée est un avenir résiliable non-bloquant.

En fait, différé est synonyme de futur ou promesse (see this wikipedia article).

La classe Deferred fait partie du projet kotlinx-coroutines qui fournit un support de bibliothèque pour les corotines de Kotlin. La façon recommandée de commencer à en apprendre plus à ce sujet est en lisant ce guide.