getpriority()

get nice value 

Function


SYNOPSIS

#include <sys/resource.h>

int getpriority(int which, id_t who);


DESCRIPTION

The getpriority() function gets the nice value of a process, process group, or user to the specified value. If more than one process is specified, getpriority() returns the lowest nice value for any of the specified processes.

Because getpriority() can return -1 on successful completion, it is necessary to set errno to EZERO before calling getpriority(). If getpriority() returns -1, errno can be checked to see if an error occurred or if the value is a legitimate nice value.


PARAMETERS

which 

Specifies the type of target. Can be one of PRIO_PROCESS, PRIO_PGRP, or PRIO_USER.

who 

Is the target of the getpriority() request; a process ID, process group ID, or user ID, respectively, depending on the value of which. A value of 0 indicates that the target is the current process, process group, or user.


RETURN VALUES

If successful, getpriority() returns the lowest nice value for the specified process, process group, or user. On failure, it returns -1 and sets errno to one of the following values:

EINVAL 

The value of the which parameter was not recognized, or the value of the who parameter is not a valid process ID, process group ID or user ID.

ENOTSUP 

The value of the which or who parameter is not currently supported.

ESRCH 

No process could be locating using the which and who parameter values specified.


CONFORMANCE

UNIX 98, with exceptions.


MULTITHREAD SAFETY LEVEL

MT-Safe.


PORTING ISSUES

UNIX 98 documentation refers to NZERO as the default nice value, and then states that the value parameter is interpreted as (value + NZERO). This is confusing, and somewhat contradictory with standard UNIX behavior. The NuTCRACKER Platform implementation uses values of -NZERO to NZERO-1, which is the same thing. NZERO is defined as 20 in <limits.h>.

The PRIO_PGRP and PRIO_USER values for which are not currently supported; if either value is specified, getpriority() returns -1 with errno set to ENOTSUP.

When PRIO_PROCESS is specified for which, only 0 or the return value of getpid() may be specified for who. If any other value is specified, getpriority() returns -1 with errno set to ENOTSUP.

The following table shows the mapping between nice values and Win32 priorities. Refer to the Win32 documentation for SetThreadPriority() for more information on Win32 priority issues.

nice value Win32 Priority
-20 to -16 THREAD_PRIORITY_HIGHEST
-15 to -6 THREAD_PRIORITY_ABOVE_NORMAL
-5 to +4 THREAD_PRIORITY_NORMAL
+5 to +14 THREAD_PRIORITY_BELOW_NORMAL
+15 to +19 THREAD_PRIORITY_LOWEST


AVAILABILITY

PTC MKS Toolkit for Professional Developers
PTC MKS Toolkit for Professional Developers 64-Bit Edition
PTC MKS Toolkit for Enterprise Developers
PTC MKS Toolkit for Enterprise Developers 64-Bit Edition


SEE ALSO

Functions:
execl(), execle(), execlp(), execlpe(), execv(), execve(), execvp(), execvpe(), fork(), nice(), setpriority()


PTC MKS Toolkit 10.3 Documentation Build 39.