Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
getpriority(2)							getpriority(2)

       getpriority, setpriority	- get or set program scheduling	priority

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

       #define PRIO_PROCESS	0    /*	process	*/
       #define PRIO_PGRP	1    /*	process	group */
       #define PRIO_USER	2    /*	user id	*/

       prio = getpriority(which, who)
       int prio, which,	who;

       setpriority(which, who, prio)
       int which, who, prio;

       The  scheduling	priority  of  the  process, process group, or user, as
       indicated by which and who, is obtained with the	call and set with  the
       call.   The  which is one of PRIO_PROCESS, PRIO_PGRP, or	PRIO_USER, and
       who  is	interpreted  relative  to  which  (a  process  identifier  for
       PRIO_PROCESS, process group identifier for PRIO_PGRP, and a user	ID for
       PRIO_USER).  The	prio is	a value	in the range -20 to 20.	  The  default
       priority	is 0; lower priorities cause more favorable scheduling.

       The  call returns the highest priority (lowest numerical	value) enjoyed
       by any of the specified processes.  The call sets the priorities	of all
       of  the specified processes to the specified value.  Only the superuser
       may lower priorities.

Return Values
       Since can legitimately return the value -1, it is  necessary  to	 clear
       the  external variable errno prior to the call, then check it afterward
       to determine if a -1 is an error	 or  a	legitimate  value.   The  call
       returns 0 if there is no	error or -1 if there is.

       The and system calls fail under the following conditions:

       [ESRCH]	      No processes were	located	using the which	and who	values

       [EINVAL]	      The which	was not	one  of	 PRIO_PROCESS,	PRIO_PGRP,  or

       In  addition  to	the errors indicated above, setpriority	can fail under
       the following conditions:

       [EPERM]	      A	process	was located, but  neither  its	effective  nor
		      real  user  ID  matched  the  effective  user  ID	of the

       [EACCES]	      A	user other than	the superuser attempted	 to  change  a
		      process priority to a negative value.

See Also
       nice(1),	fork(2), renice(8)


Name | Syntax | Description | Return Values | Diagnostics | See Also

Want to link to this manual page? Use this URL:

home | help