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 5 - Vlákna - Výjimky a Deadlock v C# .NET

V minulé lekci, Vlákna - Bezpečnost vláken v C# .NET, jsme se zabývali bezpečností vláken v C# .NET. Vybrali jsme si jednu techniku sdílení dat mezi vlákny, kterou jsme implementovali do příkladu.

V dnešním C# .NET tutoriálu se budeme věnovat výjimkám, jejich zachycení a propagaci. Na praktickém příkladu si zkusíme nasimulovat Deadlock s tímto výstupem:

Konzolová aplikace
Thread 1 zamkl zámek 1.
Thread 2 zamkl zámek 2.
Thread 2 čeká na zámek 1...
Thread 1 čeká na zámek 2...

Výjimky

Výjimky jsou významným aspektem programování, který nám umožňuje elegantně reagovat na neočekávané události během provádění programu.

Výjimka může být způsobena například těmito faktory:

  • chyby v kódu,
  • chybějící nebo nedostupné soubory,
  • neplatné vstupy od uživatele nebo problémy v systémových voláních.

Když nastane výjimka, běžící program přeruší svůj běh. Program začne hledat část kódu, která se nazývá výjimečný blok nebo výjimečný handler, který může výjimku zachytit a řádně zpracovat.

Zachycení výjimek

Výjimky lze zachytit pomocí konstrukce try-catch. Blok try obsahuje kód, ve kterém může dojít k vzniku výjimky. Blok catch definuje zpracování této výjimky. Ukažme si zápis v kódu:


 

...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# .NET tutoriálu se budeme věnovat výjimkám, jejich zachycení a propagaci. Na praktickém příkladu si zkusíme nasimulovat Deadlock.
Článek pro vás napsal David Hartinger
Avatar
David je zakladatelem ITnetwork a programování se profesionálně věnuje 15 let. Má rád Nirvanu, nemovitosti a svobodu podnikání.
Unicorn university David se informační technologie naučil na Unicorn University - prestižní soukromé vysoké škole IT a ekonomie.
Aktivity