Sdílet prostřednictvím


CA2003: Rozlišujte vlákénka od vláken

Název_typu

DoNotTreatFibersAsThreads

CheckId

CA2003

Kategorie

Microsoft.Reliability

Změnit rozdělení

Bez rozdělení

Příčina

Spravované podprocesu je považují za Win32 podprocesu.

Popis pravidla

Nelze předpokládat, že spravované podproces je podproces Win32.Je vlákno.Společný jazykový modul runtime (CLR) spustí spravované podprocesů jako vlákna v kontextu skutečné podprocesů, které jsou majetkem SQL.Tyto podprocesy mohou být sdíleny AppDomain a dokonce databází v procesu serveru SQL Server.Použití spravovaných podproces, místní úložiště bude fungovat, ale mohou použít místní úložiště podprocesu nespravované nebo předpokládá, že kód bude znovu spustit OS podprocesu.Neměňte nastavení národního prostředí podprocesu.Nevolejte CreateCriticalSection nebo funkce CreateMutex prostřednictvím P /, protože vyžadují podproces, který zadá zámek musí ukončit také uzamčení.Protože to není bude v případě použití vlákna, kritické sekce Win32 a mutexy budou nepoužitelné v SQL.Většina státu může bez obav použít spravované System.Thread objektu.To zahrnuje místní úložiště podprocesu spravované a aktuální prostředí uživatelského rozhraní (UI) podprocesu.Však pro programovací model důvodů nebude možné změnit aktuální podproces kultury při použití SQL; to bude vynucováno prostřednictvím nové oprávnění.

Jak opravit porušení

Přezkoumá používání podprocesů a odpovídajícím způsobem změnit váš kód.

Při potlačení upozornění

Nepotlačovat by toto pravidlo.