Lekce 11 - Rozhraní CompletableJob a zjištění stavu coroutines v Kotlin
V minulé lekci, Sdílení dat coroutines pomocí SharedFlow v Kotlin, jsme si ukázali další způsob předávání
informací mezi coroutines. Využili jsme rozhraní SharedFlow
,
které umožňuje sdílet elementy v coroutines.
V dnešním Kotlin tutoriálu se naučíme pro
práci s coroutines využít rozhraní
CompletableJob
, které rozšiřuje rozhraní Job
.
Představíme si také jednotlivé atributy instance typu
Job
pro zjištění stavu dané coroutine. Vše si
opět ukážeme a vyzkoušíme na praktických příkladech.
Rozhraní Job
a
Deffered
V předchozích lekcích jsme tvořili coroutines pomocí bloku
launch
, async
nebo runBlocking
. Víme
už, že blok launch
nám vrací instanci typu Job
a
blok async
nám vrací instanci typu Deffered
. V
Kotlin jsou Job
a Deffered
rozhraní, která nám
umožňují přistupovat k funkcím a metodám knihovny
kotlinx.coroutines
. Dnes si ukážeme další možnosti práce s
coroutines pomocí rozhraní Job
a CompletableJob
.
S rozhraním Deferred
bychom mohli pracovat
obdobným způsobem, protože rozhraní Deffered
z rozhraní
Job
dědí.
Základní využití instance typu
Job
Z dřívějška už umíme uložit launch
coroutine do instance
typu Job
a vytvořit takto například dvě coroutines. Uvedli jsme
si také metodu join()
, díky níž můžeme zajistit, že
...konec náhledu článku...
Pokračuj dál
Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.
Koupit tento kurz
Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.
- Neomezený a trvalý přístup k jednotlivým lekcím.
- Kvalitní znalosti v oblasti IT.
- Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.
Popis článku
Požadovaný článek má následující obsah:
V Kotlin tutoriálu si představíme metody rozhraní CompletableJob pro práci s coroutines a další atributy instance Job pro zjišťování stavu coroutines.
Kredity získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.