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
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.
Obmedzená ponuka: Nauč sa všetko a ušetri
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íš so zmluvnými podmienkami.
- 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 C ++ tutoriále si ukážeme ďalšie implementácie Read-Write zámkov, v ktorých nedôjde k zablokovaniu neprioritné operácie.
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ť.