Eine in Kotlin 1.3 eingeführte Sprachfunktion und Bibliothek, mit denen das Modell "Green Threads" implementiert wird. Es ermöglicht das natürliche Schreiben von nicht blockierendem E / A-Code, ohne auf Futures oder Rückrufe zurückgreifen zu müssen.
In der kotlinx.coroutinesBibliothek können Sie eine neue Coroutine entweder mit launch(mit join) oder async(mit await) starten . Was ist der Unterschied zwischen ihnen?
Ich lese Kotlin Coroutine und weiß, dass es auf suspendFunktion basiert . Aber was heißt suspenddas? Coroutine oder Funktion wird ausgesetzt? Von https://kotlinlang.org/docs/reference/coroutines.html Grundsätzlich sind Coroutinen Berechnungen, die angehalten werden können, ohne einen Thread zu blockieren Ich hörte Leute oft sagen "Funktion aussetzen". Aber ich denke, es ist die Coroutine, …
Ich habe Kotlin-Dokumente gelesen und wenn ich sie richtig verstanden habe, funktionieren die beiden Kotlin-Funktionen wie folgt: withContext(context): wechselt den Kontext der aktuellen Coroutine, wenn der angegebene Block ausgeführt wird, wechselt die Coroutine zurück zum vorherigen Kontext. async(context): Startet eine neue Coroutine im angegebenen Kontext. Wenn wir .await()die zurückgegebene DeferredTask …
Gibt es eine spezifische Sprachimplementierung in Kotlin, die sich von der Implementierung von Coroutinen in einer anderen Sprache unterscheidet? Was bedeutet, dass Coroutine wie ein leichter Faden ist? Was ist der Unterschied? Laufen Kotlin-Coroutinen tatsächlich parallel / gleichzeitig? Selbst in Mehrkernsystemen läuft immer nur eine Coroutine (stimmt das?) Hier starte …
Ich versuche derzeit, Kotlin-Coroutinen stärker zu nutzen. Aber ich habe ein Problem: Wenn ich Moshi oder Okhttp in diesen Coroutinen verwende, bekomme ich eine Warnung: "unangemessener Aufruf der Blockierungsmethode" Was ist der beste Weg, um diese zu beheben? Ich möchte wirklich nicht unangemessen sein ;-)
Ich habe einige Fragen zu Kotlin Flow Ich kann LiveData von mehreren Fragmenten aus beobachten. Kann ich das mit Flow machen? Wenn ja, wie dann? Mit map& können wir mehrere LiveData von einer einzigen LiveData haben switchMap. Gibt es eine Möglichkeit, mehrere Flows aus einer einzigen Quelle zu erhalten? Mit …
Update: Es funktioniert, wenn ich zuerst eine Coroutine ohne Timeout und dann mit Timeout ausführe. Wenn ich aber zuerst eine Coroutine mit Timeout ausführe, wird mir ein Fehler angezeigt. Gleiches gilt auch für Async. Ich erstelle eine Demo-Kotlin-Multiplattform-Anwendung, in der ich einen API-Aufruf mit ktor ausführe. Ich möchte eine konfigurierbare …
In der letzten Google-E / A haben Jose Alcerreca und Yigit Boyar uns mitgeteilt, dass wir LiveData nicht mehr zum Abrufen von Daten verwenden sollten. Jetzt sollten wir Suspend-Funktionen für One-Shot-Abrufe verwenden und Kotlins Flow verwenden, um einen Datenstrom zu erstellen. Ich bin damit einverstanden, dass Coroutinen sich hervorragend zum …
Bieten Kotlin-Coroutinen Garantien für "Vorheriges"? mutableVarGibt es in diesem Fall beispielsweise eine "Vorher-passiert" -Garantie zwischen dem Schreiben in und dem anschließenden Lesen eines (möglicherweise) anderen Threads: suspend fun doSomething() { var mutableVar = 0 withContext(Dispatchers.IO) { mutableVar = 1 } System.out.println("value: $mutableVar") } Bearbeiten: Vielleicht klärt ein zusätzliches Beispiel die …
Haben Sie Ideen, wie Sie ein Repository-Muster mit NetworkBoundResource- und Kotlin-Coroutinen implementieren können ? Ich weiß, dass wir mit einem GlobalScope eine Coroutine starten können, aber dies kann zu einem Coroutine-Leck führen. Ich möchte ein viewModelScope als Parameter übergeben, aber es ist etwas schwierig, wenn es um die Implementierung geht …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.