unix中nice和setpriority之间的区别

Asw*_*thy 8 c unix linux system-calls nice

我正在尝试在C中实现unix的'nice'命令的不同风格.我已经看到了nice()系统调用和setpriority()调用的定义.nice()调用仅增加/减少进程的优先级.如果我想将进程的优先级设置为特定值,我不能使用nice()调用吗?基本上,除了如何修改优先级之外,nice()和setpriority()之间有什么区别吗?

Foo*_*Bah 9

这是历史性的. nice()很久以前就被介绍过setpriority().为了向后兼容,nice保留了该功能.


Chr*_*rle 8

nice设定自己的优先级(当前流程的优点).setpriority允许您设置其他进程(或进程组或用户)的niceness.把它想象成renice.

男人3p很好

int nice(int incr);

男人3p setpriority

int setpriority(int which,id_t who,int value);