CA2259: Ujistěte se, že ThreadStatic se používá jenom se statickými poli

Vlastnost Hodnota
ID pravidla CA2259
Název Ujistěte se, že ThreadStatic je používáno pouze se statickými poli.
Kategorie Využití
Oprava, která může být destruktivní nebo nedestruktivní Nezlomitelný
Povoleno ve výchozím nastavení v .NET 10 Jako upozornění
Příslušné jazyky C# a Visual Basic

Příčina

Atribut ThreadStaticAttribute se použije na pole instance.

Popis pravidla

ThreadStaticAttribute, což označuje, že hodnota pole je pro každé vlákno jedinečná, ovlivňuje static pouze pole (Shared v jazyce Visual Basic). Při použití u polí instance nemá atribut žádný vliv na chování.

Jak opravit porušení

Chcete-li opravit porušení, odeberte ThreadStaticAttribute atribut z pole.

Příklad

Následující fragment kódu ukazuje porušení ca2259:

class C
{
    [ThreadStatic]
    public int number = 404;
}
Class C
    <ThreadStatic>
    Public number As Integer = 404
End Class

Kdy potlačit upozornění

Je bezpečné potlačit upozornění z tohoto pravidla. Atribut [ThreadStatic] je ale nop a nedělá to, co jste chtěli udělat.

Viz také