IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
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í.

7. diel - RAII a chytré zamykanie v C ++

V predchádzajúcej lekcii, Synchronizovaná front a vzor producent - konzument v C ++ , sme si vyskúšali std::mutex prakticky. Naimplementovali sme synchronizovanú front BlockingQueue, ktorá využíva mutex pre synchronizáciu prístupu ku vnútornej fronte. Analyzovali sme možné správanie triedy pre viac vlákien a opäť si pripomenuli, že je potrebné premýšľať paralelne. Potom sme túto triedu použili v návrhovom vzore producent - konzument. Nakoniec sme prišli na niekoľko problémov, ktoré môžu spôsobiť zlé správanie aplikácie alebo jej pád. V dnešnej lekcii sa zameriame na jednu skupinu problémov a tým sú neodemknuté alebo zabudnuté mutexy.

Zabudnutý mutex

Už sme si vysvetlili, že jeden mutex definuje jeden synchronizovaný blok. Ďalej vieme, že pri pokuse o zamknutí už zamknutého mutexu sa vlákno zablokuje a nie je odblokované skôr, než je mutex odomknutý.


 

...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 525 kreditov
Aktuálny stav konta 0 kreditov
Kúpou tohoto balíčku získaš prístup ku všetkým 23 článkom (23 lekcií) tohoto kurzu.

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.

Č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 lekcii sa pozrieme na idiom RAII a popíšeme si zámky std :: lock_guard a std :: unique_lock zo štandardnej knižnice.

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 Patrik Valkovič
Avatar
Věnuji se programování v C++ a C#. Kromě toho také programuji v PHP (Nette) a JavaScriptu (NodeJS).
Aktivity