У меня есть устаревший код, который использует shmget / shmat / shmdt для создания, подключения и управления сегментами общей памяти.
Приложение с кодом иногда падает, оставляя сегменты в памяти. Код повторно использует один и тот же ключ сегмента для повторного подключения к ним, но проблема заключается в том, что он каждый раз использует разные размеры общей памяти и не может подключиться из-за этого.
Мой вопрос:
1) Можно ли изменить размер общей памяти при подключении?
2) Если нет, как я могу подключиться к сегменту общей памяти (даже если я не могу знать размер), чтобы стереть его (для последующего повторного создания более нового)?
Спасибо!