CA2259:确保仅将 ThreadStatic
用于静态字段
属性 | 值 |
---|---|
规则 ID | CA2259 |
标题 | 确保 ThreadStatic 仅与静态字段一起使用 |
类别 | 使用情况 |
修复是中断修复还是非中断修复 | 非中断 |
在 .NET 8 中默认启用 | 作为警告 |
原因
属性 ThreadStaticAttribute 应用于实例字段。
规则说明
ThreadStaticAttribute 指示字段的值对于每个线程都是唯一的,它仅影响 static
(Visual Basic 中的 Shared
)字段。 在应用于实例字段时,该属性对行为没有影响。
如何解决冲突
要解决冲突,请从该字段中移除 ThreadStaticAttribute 属性。
示例
以下代码片段演示了 CA2259 冲突:
class C
{
[ThreadStatic]
public int number = 404;
}
Class C
<ThreadStatic>
Public number As Integer = 404
End Class
何时禁止显示警告
可以安全地禁止显示此规则的警告。 但 [ThreadStatic]
属性是一个 nop,并且未执行预期操作。