CA2259: garantir que ThreadStatic
seja usado apenas com campos estáticos
Property | Valor |
---|---|
ID da regra | CA2259 |
Título | Certifique-se de que ThreadStatic seja usado apenas com campos estáticos |
Categoria | Usage |
Correção interruptiva ou sem interrupção | Sem interrupção |
Habilitado por padrão no .NET 8 | Como aviso |
Causa
O atributo ThreadStaticAttribute é aplicado a um campo de instância.
Descrição da regra
ThreadStaticAttribute, que indica que o valor de um campo é exclusivo para cada thread, afeta apenas campos static
(Shared
no Visual Basic). Quando aplicado a campos de instância, o atributo não tem impacto sobre o comportamento.
Como corrigir uma violação
Para corrigir uma violação, remova o atributo ThreadStaticAttribute do campo.
Exemplo
O seguinte snippet de código mostra uma violação de CA2259:
class C
{
[ThreadStatic]
public int number = 404;
}
Class C
<ThreadStatic>
Public number As Integer = 404
End Class
Quando suprimir avisos
É seguro suprimir um aviso desta regra. No entanto, o atributo [ThreadStatic]
é um nop e não está fazendo o que você pretendia que ele fizesse.
Confira também
Colaborar conosco no GitHub
A fonte deste conteúdo pode ser encontrada no GitHub, onde você também pode criar e revisar problemas e solicitações de pull. Para obter mais informações, confira o nosso guia para colaboradores.