• [^] # Re: templates variadiques

    Posté par . En réponse à la dépêche Le standard C++0x a enfin été voté. Évalué à 3.

    Sauf que les processeurs modernes sont tous pipeliné, donc entre le moment ou la valeur est lue et le moment ou elle est écrite il se passe plusieurs cycles même si elle est indiquée s'exécuter en un seul cycle.
    Donc même avec deux cœur sur un seul processeur, tu peux avoir des problèmes

    thread 1 | thread 2
    lecture val | ...
    incrementation | lecture val
    ecriture val | incrementation
    ... | ecriture val
    
    

    Ton opération n'est pas atomique si tu ne met pas le préfixe lock qui va blocker toutes les lectures de la valeur sur tous les processeurs.