void writer(data d) {
atomic_fetch_add(v1, 1);
write(d);
atomic_fetch_add(v2, 1);
}
data reader() {
int lv1, lv2;
data d;
do {
lv2 = atomic_load(v2);
d = read();
lv1 = atomic_load(v1);
} while(lv1 != lv2);
return d;
}
rdpwrap сломали еще лет 5 назад
это не отвечает на вопрос, "почему не работает сразу?"
"стандарт сборки в мире C++"
cmake --help
И да, такие моменты немного разочаровывают ... надеешься что тебе дадут инструмент который работает, а в итоге получаешь колхозный кобайн (это я про cmake), с которым надо регулярно "проводить ночь".
winget
смена командной строки ситуацию не изменила.
А где же мьютекс?