@ipivkin

Как поместить указатель в Shared memory в Linux?

Добрый день!
Пытаюсь реализовать межпроцесное взаимодействие через Shared memory в Linux. Столкнулся с трудностью при обмене указателями.
Адресное пространство каждого процесса различно и адрес указателя в одном процессе не совпадет с адресом в другом. Я это понимаю. Необходимо реализовать относительное смещение, но как это сделать, не представляю.
Поделитесь примером! Пожалуйста
  • Вопрос задан
  • 2532 просмотра
Пригласить эксперта
Ответы на вопрос 1
AxisPod
@AxisPod
Вы издеваетесь что ли?
Никогда в Shared memory нельзя класть указатели, вообще никогда. Вы можете хранить только голые данные, достаточные для полноценной интерпритации. Вы можете организовать там свое хранилище основанное на смещениях, но никаких указателей там быть не должно, да и объекты там лучше тоже не создавать. Представляйте себе, что работать можно как с файлом со случайным доступом и не более.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы