Как я понял заблокированы все порты кроме 443
const int* p1 = ...; // константный указатель
int* const p2 = ...; // указатель на константу
int const * p1;
int const * const p3;
cppreference ничего не говорит про видимость, только про атомарность, т.е., что изменение происходит целиком или не происходит вообще.
из чего это следует?
Что здесь обозначено словом "синхронизировать"?
Какие выводы можно сделать из такого теста, если он не показывает ощибок?
2 потока не могут одновременно блокировать handle
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;
}
2. Как замеряли время? Конкретно время выполнения CreateProcess() или всего приложения?
3. Предполагаю, что висит у вас на выполнении WaitForSingleObject() - это единственное место, где в коде происходит ожидание. Попробуйте тут поэкспериментировать, напримре, вместо INFINIT задать какое-то мелкое время или вообще не ждать.
Похоже в коде на go, не происходит ожидание завершения дочернего процесса.