Общая память в общей библиотеке - PullRequest
0 голосов
/ 31 декабря 2018

Мне нужно создать библиотеку для распределителей памяти в разделяемой памяти в c.После моих попыток мне пришлось бы открывать и отображать общую память в начале каждой программы, которая использовала бы мою библиотеку и передавала указатель на мои функции malloc.Можно ли открыть его только один раз внутри библиотеки?Это единственное, что я не понимаю, как делать во всем этом задании

1 Ответ

0 голосов
/ 01 января 2019

Это зависит от применения.Если каждая программа, использующая библиотеку, нуждается в собственной разделяемой памяти, каждая программа должна вызывать некоторую функцию инициализации библиотеки, которая будет выделять новую разделяемую память.Если совместно используемая память требуется только один раз, и библиотека может сделать это для каждой программы позже, то проверки на то, выделена она или нет, а если нет, будет достаточно.

...