Czy inkrementacja liczby atomowej w x86 jest całkowita? [duplikować]

To pytanie ma już tutaj odpowiedź:

Czy num ++ może być atomowy dla „int num”? 13 odpowiedzi

Na wielordzeniowej maszynie x86 Powiedzmy, że wątek wykonujący na core1 zwiększa zmienną całkowitąa jednocześnie wątek na rdzeniu 2 również go zwiększa. Biorąc pod uwagę, że początkowa wartośća było 0, czy zawsze będzie2 na końcu? Czy może mieć inną wartość? Zakładać, żea jest zadeklarowany jakovolatile i nie używamy zmiennych atomowych (takich jak atomowy <> C ++ i wbudowanych w operacje atomowe w gcc).

Jeśli wartośća w takim przypadku zawsze będzie zawsze 2, czy to oznacza, że ​​along int w x86-64 miałaby również tę samą właściwość, czylia w końcu zawsze będzie 2?

questionAnswers(4)

yourAnswerToTheQuestion