您的位置:首页 > 编程语言 > C语言/C++

C语言setpriority()函数:设置程序进程执行优先权

2016-07-22 08:45 489 查看
相关函数:getpriority, nice

头文件:#include <sys/time.h>    #include <sys/resource.h>

定义函数:int setpriority(int which, int who, int prio);

函数说明:setpriority()可用来设置进程、进程组和用户的进程执行优先权。参数which 有三种数值, 参数who 则依which 值有不同定义。

which who 代表的意义:

1、PRIO_PROCESS who 为进程识别码

2、PRIO_PGRP who 为进程的组识别码

3、PRIO_USER who 为用户识别码

参数prio 介于-20 至20 之间. 代表进程执行优先权, 数值越低代表有较高的优先次序, 执行会较频繁. 此优先权默认是0, 而只有超级用户 (root)允许降低此值.

返回值:

执行成功则返回0, 如果有错误发生返回值则为-1, 错误原因存于errno.

1、ESRCH:参数which 或who 可能有错, 而找不到符合的进程

2、EINVAL:参数which 值错误.

3、EPERM:权限不够, 无法完成设置

4、EACCES:一般用户无法降低优先权
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: