Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

8. diel - Prenos dát coroutines pomocou kanálov v Kotlin

V minulej lekcii, Využitie Flow a Sequence u coroutines v Kotlin , sme sa zoznámili s rozhraniami Flow a Sequence a ukázali si, ako ich môžeme vo svojich aplikáciách využiť.

V dnešnom tutoriále zameranom na coroutines sa naučíme pracovať s kanálmi, ktoré slúžia na komunikáciu medzi coroutines. Všetko si opäť ukážeme na praktických príkladoch, kde si použitie Channel vyskúšame.

Odovzdávanie dát coroutines pomocou Channel

Kanály umožňujú jednoduché odovzdávanie objektov medzi jednotlivými coroutines. Kanál - Channel poskytuje metódy send() a receive(), ktoré umožňujú poslať a prijať dáta z kanála. Pri vytváraní inštancie Channel v Kotline je potrebné určiť typ dát, ktoré budú kanálom prenášané.

Vytvorenie Channel s metódami send() a receive()

Poďme si všetko ukázať najprv na jednoduchom príklade komunikácie coroutines prostredníctvom Channel:

fun main(): Unit = runBlocking {
   val channel = Channel<Int>()

   // Coroutine na odosielanie objektov
   launch {
      repeat(3) {
          channel.send(it)
          delay(1000)
      }
   }

   // Coroutine na prijímanie objektov
   launch {
       while (isActive) {
           println(channel.receive())
       }
   }
}

Po spustení tohto programu dostaneme nasledujúci


 

...koniec náhľadu článku...
Pokračuj ďalej

Vedomosti v hodnote stoviek tisíc získaš za pár korún

Minul si až sem a to je super! Veríme, že ti prvé lekcie ukázali niečo nového a užitočného.
Chceš v kurze pokračovať? Prejdi do prémiové sekcie.

Kúpiť tento kurz

Kúpiť všetky aktuálne dostupné lekcie s funkciou odovzdávanie úloh iba za 400 kreditov
Aktuálny stav konta 0 kreditov
Kúpou tohoto balíčku získaš prístup ku všetkým 19 článkom (19 lekcií) tohoto kurzu.

Obsah článku spadá pod licenciu Premium, kúpou článku súhlasíš so zmluvnými podmienkami.

Čo od nás v ďalších lekciách dostaneš?
  • Neobmedzený a trvalý prístup k jednotlivým lekciím.
  • Kvalitné znalosti v oblasti IT.
  • Zručnosti, ktoré ti pomôžu získať vysnívanú a dobre platenú prácu.

Popis článku

Požadovaný článok má nasledujúci obsah:

V Kotline tutoriále si predstavíme kanály, ktoré slúžia na odovzdávanie dát medzi coroutines. Naučíme sa tiež nastaviť správny typ Channel pre danú komunikáciu.

Kredity získaš, keď podporíš našu sieť. To môžeš urobiť buď zaslaním symbolickej sumy na podporu prevádzky alebo pridaním obsahu na sieť.

Článok pre vás napísal Marek Urbańczyk
Avatar
Autor se věnuje programování v Kotlinu, Javě. Má také zkušenosti s C#.
Aktivity