c ++ 11 межпроцессная атомика и мьютексы

У меня есть программа для Linux, которая порождает несколько процессов (fork) и обменивается данными через общую память POSIX. Я'Я хотел бы, чтобы каждый процесс выделил идентификатор (0-255). Мое намерение состоит в том, чтобы поместить битовый вектор в область разделяемой памяти (инициализированную в ноль), атомарно сравнить и поменять местами бит, чтобы выделить идентификатор.

Есть ли c ++ 11-дружественный способ сделать это? Могу ли я создать атомный битсет? Могу ли я использовать мьютекс в разных процессах? Как мне убедиться, что конструкторы вызываются один и только один раз во всех процессах?

Ответы на вопрос(2)

Ваш ответ на вопрос