Lekce 6 - Vlákna - Priorita vláken, atomické operace v C# .NET
V minulé lekci, Vlákna - Výjimky a Deadlock v C# .NET, jsme se věnovali výjimkám, jejich zachycení a propagaci. Na praktickém příkladu jsme si zkusili nasimulovat Deadlock.
V dnešním C# .NET tutoriálu se seznámíme s
prioritou vláken, klíčovým slovem volatile
,
atomickými operacemi a třídou Interlocked
.
Naprogramujeme si aplikaci.
Priorita vláken
Vláknům můžeme nastavovat prioritu, a to pomocí jeho vlastnosti
Priority
. Jedná se o výčtový typ enum
o těchto
prvcích:
Highest
,AboveNormal
,Normal
,BelowNormal
,Lowest
.
Vlákno s vyšší prioritou dostává více procesorového času, což
ovšem znamená, že ostatní vlákna procesu dostávají o to méně. Prioritu
vlákna nastavíme pomocí výčtového typu ThreadPriority
takto:
Thread thread = new Thread(MetodaVlakna());
thread.Priority = ThreadPriority.High;
Předávání parametrů
Při vytváření nového vlákna je možné předat parametry do metody, která bude toto vlákno vykonávat. To umožňuje dynamické a flexibilní vytváření vláken s různými parametry.
V novějších verzích .NET lze parametry předávat pomocí lambda výrazu:
...konec náhledu článku...
Pokračuj dál
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.
Koupit tento kurz
Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.
- Neomezený a trvalý přístup k jednotlivým lekcím.
- 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 seznámíme s prioritou vláken, klíčovým slovem volatile, atomickými operacemi a třídou Interlocked. Naprogramujeme si aplikaci.
Kredity získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.