Я новичок в параллельном программировании на C ++
Я хочу, чтобы код сервера (на коробке Linux) на основе шаблона пула потоков, где
потоки должны читать (и только читать) из общей памяти
отвечать на входящие запросы
Я очень смущен 🙁
Интересно, нужно ли что-то делать для синхронизации потоков
когда они обращаются к постоянной памяти и как это сделать (возможно, используя файл карты памяти?)
Если данные доступны только для чтения, вам не нужно синхронизировать потоки чтения, вы делаете это только если что-то записывает. Кроме того, потоки разделяют пространство памяти своих родителей, поэтому вам не нужно создавать сегмент общей памяти или что-то подобное.
Я знаю очень хорошую статью о многопоточности C ++ 11 — Прочитай это. В части 4 вы увидите реализацию и объяснение общего контейнера.