- 相關(guān)推薦
c語(yǔ)言如何設(shè)置程序進(jìn)程執(zhí)行優(yōu)先權(quán)
使用setpriority()函數(shù)設(shè)置程序進(jìn)程執(zhí)行優(yōu)先權(quán):
頭文件:
#include#include
定義函數(shù):
int setpriority(int which, int who, int prio);
函數(shù)說明:setpriority()可用來設(shè)置進(jìn)程、進(jìn)程組和用戶的進(jìn)程執(zhí)行優(yōu)先權(quán)。參數(shù)which 有三種數(shù)值, 參數(shù)who 則依which 值有不同定義。
which who 代表的意義:
1、PRIO_PROCESS who 為進(jìn)程識(shí)別碼
2、PRIO_PGRP who 為進(jìn)程的組識(shí)別碼
3、PRIO_USER who 為用戶識(shí)別碼
參數(shù)prio 介于-20 至20 之間. 代表進(jìn)程執(zhí)行優(yōu)先權(quán), 數(shù)值越低代表有較高的優(yōu)先次序, 執(zhí)行會(huì)較頻繁. 此優(yōu)先權(quán)默認(rèn)是0, 而只有超級(jí)用戶 (root)允許降低此值.
返回值:
執(zhí)行成功則返回0, 如果有錯(cuò)誤發(fā)生返回值則為-1, 錯(cuò)誤原因存于errno.
1、ESRCH:參數(shù)which 或who 可能有錯(cuò), 而找不到符合的進(jìn)程
2、EINVAL:參數(shù)which 值錯(cuò)誤.
3、EPERM:權(quán)限不夠, 無法完成設(shè)置
4、EACCES:一般用戶無法降低優(yōu)先權(quán)
【c語(yǔ)言如何設(shè)置程序進(jìn)程執(zhí)行優(yōu)先權(quán)】相關(guān)文章:
Java程序如何調(diào)用C/C++語(yǔ)言函數(shù)10-29
C語(yǔ)言如何提高程序效率04-10
如何在Linux下運(yùn)行C語(yǔ)言程序10-14
C語(yǔ)言程序試題04-26
c語(yǔ)言入門經(jīng)典程序08-01
C語(yǔ)言經(jīng)典程序題09-17