Nové výhodné předplatné namísto kreditů je tu! Více informací. Upravili jsme také naše provozní podmínky.
NOVINKA: Staň se datovým analytikem a získej jistotu práce, lepší plat a nové kariérní možnosti. Více informací:

Lekce 12 - Coffmanovy podmínky v C++

V minulé lekci, Deadlock a livelock v C++, byl probrán problém s deadlockem a livelockem. Zjistili jsme, že je to jedna z nejnebezpečnějších situacích ve vícevláknovém programování. Při špatném synchronizování a vyvolání deadlocku celý program zamrzne a nemáme-li prostředky, jak situaci detekovat (nebo ještě lépe ji předcházet), program musí být ukončen násilím.

V dnešní lekci se podíváme, jak lze detekovat deadlock nebo mu zabránit. Lekce bude jedna z těch teoretických. Tak vzhůru na to!

Coffmanovy podmínky

V roce 1971 popsal Edward G. Coffman čtyři podmínky, které dovolují vznik deadlocku. Jednodušeji řečeno se jedná o popis 4 vlastností systému. Pokud má systém (ať už je to operační systém nebo samotná aplikace) tyto čtyři vlastnosti (tedy splňuje Coffmanovy podmínky), může se v něm vyskytnout deadlock. Tyto čtyři podmínky jsou:


 

...konec náhledu článku...
Pokračuj dál

Znalosti v hodnotě stovek tisíc získáš za pár korun

Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.

Obsah článku spadá pod licenci Premium, koupí článku souhlasíš s Provozními podmínkami.

Co od nás v dalších lekcích dostaneš?
  • Přístup k jednotlivým lekcím dle způsobu pořízení.
  • Kvalitní znalosti v oblasti IT.
  • Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.

Popis článku

Požadovaný článek má následující obsah:

V C++ tutoriálu si vysvětlíme, co to jsou Coffmanovy podmínky a jak nám umožní vyhnout se v aplikaci deadlocku.
Článek pro vás napsal Patrik Valkovič
Avatar
Věnuji se programování v C++ a C#. Kromě toho také programuji v PHP (Nette) a JavaScriptu (NodeJS).
Aktivity