визуальная студия и общая память - PullRequest
0 голосов
/ 17 апреля 2009

Проект, которым я сейчас занимаюсь, основан на Межпроцессном взаимодействии.

И я использую концепцию общей памяти для этого межпроцессного взаимодействия.

При использовании концепции общей памяти требуется несколько файлов, например sys / ipc.h, sys / shm.h

Являются ли эти файлы частью Visual Studio Insatallation или это то, что я должен загрузить.

Мне нужно знать, нужно ли мне переустанавливать Visual Studio 2005 и включать межпроцессное взаимодействие, чтобы эти файлы были автоматически под рукой для использования.

проверьте эту ссылку http://www.cs.cf.ac.uk/Dave/C/node27.html

Если ссылка ссылается на Solaris, какую концепцию я могу использовать для совместного использования памяти в Windows

РЕДАКТИРОВАТЬ: Но CreateFileMapping предназначен для правильного сопоставления файлов. Мне нужно сопоставить расположение памяти с другим процессом, чтобы использовать данные, хранящиеся в этом месте.

Спасибо, я попробую код ..

Ответы [ 2 ]

0 голосов
/ 17 апреля 2009

http://msdn.microsoft.com/en-us/library/aa366551(VS.85).aspx

Используйте CreateFileMapping и MapViewOfFile.

0 голосов
/ 17 апреля 2009

Указанные вами заголовочные файлы предназначены для UNIX-подобных систем. Загрузка заголовков не принесет вам пользы, так как UNIX и Windows используют разные подходы к общей памяти и IPC в целом. См. CreateFileMapping и связанные функции для получения дополнительной информации.

Редактировать: Ссылка, которую вы цитируете, явно относится к Solaris, а не к Windows. Как я уже сказал, если вы хотите использовать разделяемую память в Windows, вам нужно использовать функции отображения файла памяти, такие как CreateFileMapping. В общих чертах, обоим процессам необходимо создать сопоставление файлов, а затем они могут обрабатывать сопоставленный файл как разделяемую память. Вот пример здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...