19. diel - Read-Write zámky v C ++ - Ďalší implementácia

V minulej lekcii, Read-Write zámky v C ++ , sme si zaoberali read-write zámky - entitami umožňujúcimi pri správnom použití extrémne zrýchliť aplikáciu.

V dnešnom C ++ tutoriálu si ukážeme ďalšie implementácie Read-Write zámkov, v ktorých nedôjde k zablokovaniu neprioritné operácie.

ReadFirstBatchWriteLock

Po skončení zápisu je minulá trieda v jedinečnej situácii - žiadne vlákno aktuálne nedrží zámok. V predchádzajúcej implementáciu sme prebudili čítacie vlákna, ale tým sme sa pripravili o príležitosť, pretože nevieme dopredu určiť, kedy zas bude zámok k dispozícii pre zápis.

Trieda ReadFirstBatchWriteLock sa snažia túto situáciu využiť. Ak je raz zámok získaný pre zápis, vykoná všetky zápisy, ktoré čakajú v rade. Inak povedané, akonáhle sa vlákna pre zápis raz chopí príležitosti, neuvoľní zámok, kým nie sú hotová:


 

...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.

Pred kúpou tohto článku je potrebné kúpiť predchádzajúci diel

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 C ++ tutoriále si ukážeme ďalšie implementácie Read-Write zámkov, v ktorých nedôjde k zablokovaniu neprioritné operácie.
Článok pre vás napísal Patrik Valkovič
Avatar
Věnuji se programování v C++ a C#. Kromě toho také programuji v PHP (Nette) a JavaScriptu (NodeJS).
Aktivity