Linux使用笔记: 共享内存的查看与释放

程序异常退出时没有释放共享内存,调试时出现错误,在网上搜了一下,在shell中是可以查看与释放已分配的共享内存的。

查看共享内存,使用ipcs命令,不加任何参数时,这条命令会把共享内存/信号量/消息队列的信息都打印出来。如果只想显示共享内存信息,则使用ipcs -m

要删除共享内存,需要使用ipcrm命令,使用shmid做为参数。shmid在ipcs命令中会有输出。

下面的命令可以释放所有已分配的共享内存:

ipcs -m | awk '$2 ~ /[0-9]+/ {print $2}' | while read s; do sudo ipcrm -m $s; done

深入阅读请看: 批量释放系统共享内存

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注