Удалить общую память с помощью iprm в Linux не удается

Я работаю с общей памятью и проверяю переполнение ссылок на память. У меня есть некоторые проблемы в моем коде, и я не могу удалить все сегменты памяти, которые я пытаюсь сделать так:

ipcs -m
ipcrm -m 360448
ipcs -m

Сегмент памяти никогда не удаляет

    ------ Shared Memory Segments --------
key        shmid      owner      perms      bytes      nattch     status
0x00000000 360448     root       700        2484       2          dest
0x00000000 393218     root       700        8372       2          dest
0x00000000 425987     root       700        4416       2          dest
0x00000000 458756     root       700        2484       2          dest
0x00000000 491525     root       700        2400       2          dest
0x00000000 524294     root       700        12800      2          dest
0x00000000 557063     root       700        5800       2          dest
0x00000000 589832     root       700        144160     2          dest
0x00000000 622601     root       700        24672      2          dest
0x00000000 655370     root       700        34368      2          dest
0x00000000 688139     root       700        9996       2          dest

1 ответ

Решение

Я нашел решение. Когда состояние общей памяти является dest, сначала перечислите все сегменты памяти с помощью ipcs -mp, затем удалите сегмент памяти с помощью kill "lpid number"

Другие вопросы по тегам