OpenMP имеет собственную поддержку для атомарного доступа, однако есть предпосылки для предпочтения атомарности С++ 11: они значительно более гибкие, и они являются частью стандарта. С другой стороны, OpenMP более мощный, чем библиотека потоков С++ 11.
Стандарт определяет библиотеку атомных операций и библиотеку поддержки потоков в двух отдельных главах. Это заставляет меня поверить, что компоненты для доступа атома являются ортогональными к используемой библиотеке потоков. Могу ли я комбинировать атомы С++ 11 и OpenMP?
Существует очень аналогичный вопрос о переполнении стека; однако он был в основном без ответа в течение трех лет, поскольку его ответ не отвечает на фактический вопрос.