Nové výhodné predplatné namiesto kreditov je tu! Viac informácií. Upravili sme aj naše prevádzkové podmienky.
NOVINKA: Kurz Práca s umelou inteligenciou teraz už od 0 €. Staň sa žiadaným profesionálom. Zisti viac:

15. diel - Pokročilá práca s dispečermi u coroutines v Kotlin

V minulej lekcii, Pokročilá práca s kanálmi pri coroutines v Kotlin , sme si predstavili pokročilú prácu s kanálmi. Tiež sme si ukázali, ako správne posielať objekty so zdrojmi cez kanál.

V jednej z predchádzajúcich lekcií, Dispatchers a CoroutineContext v Kotline, sme si predstavili dispečerov a ukázali si, ako s nimi pracovať. V dnešnom tutoriále sa k nim vrátime a povieme si, ako môžeme vytvoriť vlastný dispatcher alebo ako zabrániť tomu, aby ho nejaká z coroutines blokovala.

Vytvorenie vlastného dispečera s jedným vláknom

Vytvoriť nový dispatcher, ktorý sa bude spúšťať na jednom vlákne, umožňuje metóda newSingleThreadContext(). Táto metóda berie v parametri String reprezentujúci názov vlákna a vráti nám dispatcher typu ClosableCoroutineDispatcher.

Pokiaľ neskôr tento dispatcher nebudeme potrebovať, musíme zavolať metódu close(), aby došlo k uvoľneniu všetkých zdrojov v pamäti.

Ukážme si


 

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

Vedomosti v hodnote stoviek tisíc získaš za pár eur

Došiel 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émiovej sekcie.

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

Čo od nás v ďalších lekciách dostaneš?
  • Prístup k jednotlivým lekciám podľa spôsobu obstarania.
  • 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 ukážeme pokročilé techniky práce s dispečermi s využitím rozhrania Executor a ošetríme, aby dispečer niektorá z coroutines neblokovala.
Č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