Usando volátil desde que atômico
Se eu tenho algo assim ...
volatile long something_global = 0;
long some_public_func()
{
return something_global++;
}
Seria razoável esperar que esse código não quebre (condição de corrida) quando acessado com vários threads? Se não é padrão, ainda pode ser feito como uma suposição razoável sobre os compiladores modernos?
OBSERVAÇÃO: TUDO para o qual estou usando isso é incremento e decremento atômico - nada mais sofisticado.