Я изучаю видимость памяти, несоответствие кэша и несогласованность кэша.
Я понимаю, что потоки могут иметь разные значения, даже если это значение установлено в переменной в любой момент времени T.
поэтому нам нужно использовать мьютекс или атомарный режим с ограничением памяти.
Есть ли вероятность того, что поток t1 выведет значение, отличное от 10, или мусорное значение в приведенном ниже коде? п>
#include
#include
#include
using namespace std;
int g_var1; // not Atomic, and No synchronization by mutex
void run()
{
// guarantee to print 10?
cout
Подробнее здесь: https://stackoverflow.com/questions/793 ... reating-th
Мобильная версия