• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C语言 > C语言中设置进程优先顺序的方法

C语言中设置进程优先顺序的方法

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-28

通过本文主要向大家介绍了c语言进程,c语言进程间通信,c语言进程调度,进程调度算法 c语言,c语言进程控制等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

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

#include <sys/time.h>  #include <sys/resource.h>
</div>

定义函数:

int setpriority(int which, int who, int prio);
</div>

函数说明: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:一般用户无法降低优先权

C语言getpriority()函数:取得程序进程执行优先权
头文件:

#include <sys/time.h>  #include <sys/resource.h>
</div>

定义函数:

int getpriority(int which, int who);
</div>

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

which who 代表的意义:
1、PRIO_PROCESS who:为进程识别码
2、PRIO_PGRP who:为进程的组识别码
3、PRIO_USER who:为用户识别码此函数返回的数值介于-20 至20 之间, 代表进程执行优先权, 数值越低代表有较高的优先次序, 执行会较频繁.

返回值:返回进程执行优先权, 如有错误发生返回值则为-1 且错误原因存于errno.

附加说明:由于返回值有可能是-1, 因此要同时检查errno 是否存有错误原因. 最好在调用次函数前先清除errno变量.

错误代码:
1、ESRCH:参数which 或who 可能有错, 而找不到符合的进程.
2、EINVAL:参数which 值错误.

C语言nice()函数:改变进程优先顺序
头文件:

#include <unistd.h>
</div>

定义函数:

int nice(int inc);
</div>

函数说明:nice()用来改变进程的进程执行优先顺序. 参数inc 数值越大则优先顺序排在越后面, 即表示进程执行会越慢. 只有超级用户才能使用负的inc 值, 代表优先顺序排在前面, 进程执行会较快.

返回值:如果执行成功则返回0, 否则返回-1, 失败原因存于errno 中.

错误代码:
EPERM:一般用户企图转用负的参数inc 值改变进程优先顺序.

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • C语言怎么获得进程的PE文件信息
  • C语言中进程信号集的相关操作函数详解
  • C语言中初始、增加和删除进程信号的操作方法简介
  • C语言中操作进程信号的相关函数使用详解
  • C语言中设置进程优先顺序的方法
  • C语言中获取进程识别码的相关函数
  • 简要对比C语言中三个用于退出进程的函数
  • C语言实现在windows服务中新建进程的方法

相关文章

  • 2017-05-28深入分析C++中两个大数相乘结果不正确的问题
  • 2017-05-28C语言解线性方程的四种方法
  • 2017-05-28关于统计数字问题的算法
  • 2017-05-28C语言中 “_at()” 特殊地址定位详解
  • 2017-05-28C++设计模式编程中简单工厂与工厂方法模式的实例对比
  • 2017-05-28Protocol Buffer技术深入理解(C++实例)
  • 2017-05-28在Linux下编译C或C++程序的教程
  • 2017-05-28php5系列的apache远程执行漏洞攻击脚本
  • 2017-05-28用C语言程序判断大小端模式
  • 2017-05-28C++中声明类的class与声明结构体的struct关键字详解

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • java实现任意四则运算表达式求值算法
    • 基于一致性hash算法 C++语言的实现详解
    • 深入讲解C++中的构造函数
    • C++类成员构造函数和析构函数顺序示例详细讲解
    • 用c++实现将文本每个单词首字母转换为大写
    • C++中vector容器的常用操作方法实例总结
    • 浅析C语言位域和位段
    • C++中事件机制的简洁实现及需要放弃的特性
    • MFC中动态创建控件以及事件响应实现方法
    • 浅析C/C++变量在内存中的分布

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有