当前位置: 技术问答>linux和unix
由信号量产生的问题:能否更改操作系统的默认行为,当进程非正常退出时,都能够产生core文件?
来源: 互联网 发布时间:2015-10-04
本文导语: 我主要遇到这样一个问题,多进程操作信号量,有时某一个进程会将信号量锁定,然后退出,不知是否非正常退出。这样其它进程就操作不了此信号量。我需要知道锁定信号量的进程干了什么 另外,我现在获得最后...
我主要遇到这样一个问题,多进程操作信号量,有时某一个进程会将信号量锁定,然后退出,不知是否非正常退出。这样其它进程就操作不了此信号量。我需要知道锁定信号量的进程干了什么
另外,我现在获得最后操纵信号量的pid,可惜它已经不在/proc/下存在了,如果能够保存这部分信息,也是非常有用的啊。请各位高手支招。
我已经试过s_undo选项,不管用,不知是不是操作系统不支持的问题。
另外,我现在获得最后操纵信号量的pid,可惜它已经不在/proc/下存在了,如果能够保存这部分信息,也是非常有用的啊。请各位高手支招。
我已经试过s_undo选项,不管用,不知是不是操作系统不支持的问题。
|
我的系统上面SEM_UNDO是好的阿
#include
#include
#include
#include
#include
int CreateSemphore(int nKey, int nInit)
{
int nSemId;
union semun {
int val;
}arg;
if(nInit)
{
if((nSemId = semget(nKey, 1, IPC_CREAT | 0700))
#include
#include
#include
#include
#include
int CreateSemphore(int nKey, int nInit)
{
int nSemId;
union semun {
int val;
}arg;
if(nInit)
{
if((nSemId = semget(nKey, 1, IPC_CREAT | 0700))