Как разделить семафоры между процессами, используя общую память

Мне нужно синхронизировать N клиентских процессов с одним сервером. Эти процессы развиваются главной функцией, в которой я объявил 3 семафора. Я решил использовать семафоры POSIX, но не знаю, как разделить их между этими процессами. Я думал, что разделяемая память должна работать правильно, но у меня есть несколько вопросов:

  • Как я могу выделить нужное пространство памяти в моем сегменте?
  • Могу ли я использовать sizeof(sem_t) в size_t поле shmget, чтобы выделить именно то пространство, которое мне нужно?
  • Есть ли у кого-нибудь примеры, похожие на эту ситуацию?
25
задан Yoav Kadosh 9 April 2015 в 02:19
поделиться