CA2259: Se till att ThreadStatic endast används med statiska fält

Property Värde
Regel-ID CA2259
Title Se till att ThreadStatic endast används med statiska fält
Kategori Användning
Korrigeringen är icke-bakåtkompatibel Icke-icke-bryta
Aktiverad som standard i .NET 8 Som varning

Orsak

Attributet ThreadStaticAttribute tillämpas på ett instansfält.

Regelbeskrivning

ThreadStaticAttribute, vilket anger att värdet för ett fält är unikt för varje tråd, endast påverkar static fälten (Shared i Visual Basic). När det tillämpas på instansfält har attributet ingen inverkan på beteendet.

Så här åtgärdar du en överträdelse

Åtgärda en överträdelse genom att ThreadStaticAttribute ta bort attributet från fältet.

Exempel

Följande kodfragment visar ett brott mot CA2259:

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

När du ska ignorera varningar

Det är säkert att ignorera en varning från den här regeln. Attributet är dock [ThreadStatic] en nop och gör inte det du avsåg att göra.

Se även