Sdílet prostřednictvím


Zřetězení (C# a Visual Basic)

Threading umožňuje vaše Visual Basic nebo C# program provést souběžné zpracování, takže můžete provést více operací najednou.Například můžete zřetězení sledovat vstup uživatele, provádět úlohy na pozadí a zpracování současné proudy vstup.

Vlákna mají následující vlastnosti:

  • Podprocesy umožňují provádět souběžné zpracování programu.

  • Na.NET Framework System.Threading oboru názvů umožňuje pomocí jednodušší podprocesů.

  • Podprocesy sdílejí prostředky aplikace.Další informace naleznete v tématu Pomocí podprocesů a Threading.

Standardně Visual Basic nebo C# program má jeden podproces.Pomocné podprocesů však lze vytvořit a používat souběžně s primární podproces spuštění kódu.Tyto podprocesy jsou často nazývány pracovních podprocesů.

Pracovních podprocesů lze přitom obsadit primární podproces provádění časově náročné nebo čas kritické úkoly.Například pracovní podprocesy se často používají v serverových aplikací bez čekání na dokončení předchozí požadavek splnit příchozí požadavky.Pracovní podprocesy používají také provádět úkoly "pozadí" do aplikací plochy tak, aby hlavní podproces--jednotky prvky uživatelského rozhraní – zůstává reagovat na akce uživatele.

Threading řeší problémy s propustnost a reakce, ale je také zavést sdílení zdrojů problémy jako například zablokování a sporech.Více podprocesů jsou nejvhodnější pro úkoly, které vyžadují různé prostředky, jako jsou popisovače souborů a připojení k síti.Přiřazení jednoho zdroje více podprocesů se může způsobit potíže se synchronizací a s při čekání na jiných podprocesů blokovaných podprocesů účinně chrání před účel použití více podprocesů.

Společná strategie je použití pracovních podprocesů provádět časově náročné nebo čas kritické úlohy, které nevyžadují mnoho prostředků používaných jiných podprocesů.Samozřejmě musí některé prostředky v programu přistupovat více podprocesů.Pro tyto případy System.Threading obor názvů poskytuje třídy synchronizace podprocesů.These classes include Mutex, Monitor, Interlocked, AutoResetEvent, and ManualResetEvent.

Některé nebo všechny tyto třídy můžete použít k synchronizaci činnosti více podprocesů, ale některé podpora podprocesů je podporován Visual Basic a jazyky C#.Například Visual BasicPříkaz SyncLock a C# Příkaz Lock poskytují funkce Synchronizace prostřednictvím implicitního Monitor

[!POZNÁMKA]

V .NET Framework 4, programování s více podprocesy je zjednodušena díky System.Threading.Tasks.Parallel a System.Threading.Tasks.Task tříd, Paralelní LINQ (PLINQ), nové kolekce souběžných třídy v System.Collections.Concurrent oboru názvů a nový model programování založené na pojmu úkolů, nikoli podprocesů.Další informace naleznete v tématu Paralelní programování v rozhraní .NET Framework.

Příbuzná témata

Title

Description

Aplikace s více podprocesy (C# a Visual Basic)

Popisuje, jak vytvořit a používat podprocesů.

Parametry a vrácené hodnoty procedury s více podprocesy (C# a Visual Basic)

Popisuje způsob předání a vrácení parametrů s aplikacemi s více podprocesy.

Názorný postup: Multithreading s komponentou BackgroundWorker (C# a Visual Basic)

Ukazuje, jak vytvořit jednoduchou aplikaci s více podprocesy.

Podproces synchronizace (C# a Visual Basic)

Popisuje způsob řízení interakcí podprocesů.

Podprocesu časovače (C# a Visual Basic)

Popisuje spuštění procedury oddělené podprocesy v pravidelných intervalech.

Podproces sdružování (C# a Visual Basic)

Popisuje způsob použití fondu pracovních podprocesů, které jsou spravovány v systému.

Jak: použití fondu podprocesů (C# a Visual Basic)

Znázorňuje použití synchronizované více podprocesů ve fondu podprocesů.

Spravované Threading

Popisuje, jak implementovat threading v .NET Framework.

Hlavní kapitoly knihy

ThreadingvC# 3.0 in a Nutshell, Third Edition: A Desktop Quick Reference

Asynchronous MethodsvC# 3.0 in a Nutshell, Third Edition: A Desktop Quick Reference

Threading and SynchronizationvC# 3.0 Cookbook, Third Edition: More than 250 solutions for C# 3.0 programmers