Falhas do tipo CWE-1058
1 resultadoElemento estático não-final compartilhado entre threads
Ocorre quando um método ou função acessa um elemento estático (variável ou campo) não declarado como final em um contexto multi-thread, permitindo que múltiplas threads o modifiquem simultaneamente. Isso causa condições de corrida e comportamento impredizível, pois o estado compartilhado fica inconsistente.
Uma classe com um campo estático `static int contador` sendo incrementado por múltiplas threads sem sincronização. Uma thread lê o valor, outra o altera antes da primeira escrever de volta, resultando em perda de incrementos e valores finais incorretos.
Declare o campo como `final` se não precisar ser modificado após inicialização, ou use sincronização (locks, synchronized, AtomicInteger) ao acessar. Prefira variáveis locais ou thread-local quando possível para evitar compartilhamento.