当前位置: 技术问答>linux和unix
Unix/linux下如何监测共享内存的使用情况
来源: 互联网 发布时间:2014-11-16
本文导语: 在下我的程序需要调用共享内存,在客户调用我的程序时,会挂掉,我怀疑是我的程序没释放掉内存,如何在程序中加一个监控手段? | 通常如果要调用共享内存的话,得先用shmget()函数连接...
在下我的程序需要调用共享内存,在客户调用我的程序时,会挂掉,我怀疑是我的程序没释放掉内存,如何在程序中加一个监控手段?
|
通常如果要调用共享内存的话,得先用shmget()函数连接上共享内存;
客户调用你的函数coredown有可能就是你的函数在调用使用共享内存的变量时,没有预先连接上共享内存。
#include
int shmget (key_t key, size_t size, int shmflg);
shmflg: 0660 共享内存的操作权限。
如果shmget返回小于0的话,那就说明共享内存没有创建。
如果需要创建共享的话,shmfgl: 0660|IPC_CREAT
客户调用你的函数coredown有可能就是你的函数在调用使用共享内存的变量时,没有预先连接上共享内存。
#include
int shmget (key_t key, size_t size, int shmflg);
shmflg: 0660 共享内存的操作权限。
如果shmget返回小于0的话,那就说明共享内存没有创建。
如果需要创建共享的话,shmfgl: 0660|IPC_CREAT