您的位置:首页 > 大数据 > 人工智能

kill()、raise()、alarm()、pause()、

2016-03-21 16:10 316 查看
kill:

/********************
*功能:给进程发送一个信号
*参数:pid > 0 :将signal发送给进程号为PID的进程
*      pid = 0 :将signal发送给同进程组的进程
*      pid =-1 :将signal发送给他有权限发送的每个进程(除了init进程)
*      pid < -1 : 将signal发送给|pid|的进程组的进程
*      signal:0:不会发送信号,用于检测进程或者进程组是否存在
*返回值:成功返回0,失败返回-1并设置ERRNO
* ****************/
#include <sys/types.h>
#include <signal.h>
int kill(pid_t pid, int sig);


raise:

/*********************
*功能:给当前进程或者线程发送一个信号
*参数:signal:信号
*返回值:成功返回0,失败返回-1并设置errno
* ******************/
#include <signal.h>
int raise(int sig);


alarm:没办法实现多任务的计时器

/*********************
*功能:倒计时会给当前进程发送一个SIGALRM
*参数:seconds:计时:0:不会产生signal
*返回值:倒计时时间
* ******************/
#include <unistd.h>
unsigned int alarm(unsigned int seconds);


pause:

/*********************
*功能:等待一个信号到来,解决信号忙等
*返回值:当有信号捕捉到的条件下并且信号函数执行,返回EINTR
* ******************/
#include <unistd.h>
int pause(void);


sleep:有的系统使用alarm+pause封装形成的,程序中如果也用到alarm函数就会冲突

有的系统用的是nanosleep实现的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: