当前位置:  技术问答>linux和unix

如果知道一个进程的pid,用C怎么得到他的优先级?

    来源: 互联网  发布时间:2014-11-18

    本文导语:  rt. | Standard C Library Functions                      getpriority(3C) NAME      getpriority, setpriority - get  or  set  process  scheduling      priority SYNOPSIS      #include       int g...

rt.

|
Standard C Library Functions                      getpriority(3C)

NAME
     getpriority, setpriority - get  or  set  process  scheduling
     priority

SYNOPSIS
     #include 

     int getpriority(int which, id_t who);

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

DESCRIPTION
     The getpriority() function obtains  the  current  scheduling
     priority  of  a  process,  process group, or user.  The set-
     priority() function sets the scheduling priority of  a  pro-
     cess, process group, or user.

     Target processes are specified by the values  of  the  which
     and  who  arguments.   The  which argument may be one of the
     following values:  PRIO_PROCESS,  PRIO_PGRP,  or  PRIO_USER,
     indicating  that  the who argument is to be interpreted as a
     process ID, a process group ID, or a user ID,  respectively.
     A  0  value  for the who argument specifies the current pro-
     cess, process group, or user.

     If more than one process is specified, getpriority() returns
     the  highest priority (lowest numerical value) pertaining to
     any of the specified processes, and setpriority()  sets  the
     priorities  of  all of the specified processes to the speci-
     fied value.

     The default priority is 0; negative  priorities  cause  more
     favorable  scheduling.  While  the  range  of valid priority
     values is [-20, 20], implementations may enforce  more  res-
     trictive  limits. If the value specified to setpriority() is
     less than the system's lowest supported priority value,  the
     system's  lowest  supported  value is used; if it is greater
than the system's  highest  supported  value,  the  system's
     highest supported value is used.

     Only a process with appropriate  privileges  can  raise  its
     priority (that is, assign a lower numerical priority value).

RETURN VALUES
     Upon successful completion, getpriority() returns an integer
     in  the range from -20 to 20.  Otherwise, -1 is returned and
     errno is set to indicate the error.

     Upon successful completion, setpriority() returns 0.  Other-
     wise, -1 is returned and errno is set to indicate the error.

SunOS 5.8            Last change: 6 Mar 1996                    1

Standard C Library Functions                      getpriority(3C)

ERRORS
     The getpriority() and setpriority() functions will fail if:

     ESRCH No process could be located using the  which  and  who
           argument values specified.

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

     In addition, setpriority() may fail if:

     EPERM A process was located, but neither the real nor effec-
           tive   user   ID  of  the  executing  process  is  the
           privileged user or match the effective user ID of  the
           process whose priority is being changed.

     EACCES
           A request was made to change the priority to  a  lower
           numeric  value (that is, to a higher priority) and the
           current process does not have appropriate privileges.
USAGE
     The effect of changing  the  scheduling  priority  may  vary
     depending on the process-scheduling algorithm in effect.

     Because getpriority() can return -1  on  successful  comple-
     tion,  it  is necessary to set errno to 0 prior to a call to
     getpriority(). If getpriority() returns -1, then  errno  can
     be  checked to see if an error occurred or if the value is a
     legitimate priority.

SEE ALSO
     nice(1), renice(1), fork(2)

    
 
 

您可能感兴趣的文章:

  • 目前只用过 skill -STOP/CONT ,不知道这个命令有何不妥之处。另外有个调整优先级的命令一直没用过,能否举个实例,顺便也说明是否有坏处。
  • 我要设置一个线程的优先级, 这个属性结构并没有线程的id,它怎么知道是设置哪个线程呢?
  • 已知一个进程的PID,但不知道这个进程是否停止,如何能知道系统中是否有相应的进程在运行。
  • 知道进程的ID,有什么函数知道这个进程还活不活?
  • 在程序中启动一个进程(不是线程),如何知道该进程已运行结束
  • 请问:如果知道一个进程的pid 怎么得到他父进程的pid
  • 只知道一个命令, 不知道其进程,问如何停止它?
  • 在进行多进程编程时,怎样才能知道系统管理员一共允许我同时起几个进程?
  • 请问知道进程标识,能够结束该进程并回收所有资源么?
  • 怎么查看Linux中所运行的进程,并且知道哪些是停止响应的,用什么命令可以杀掉停止响应的进程?
  • 怎么知道已经启动了的进程的ID?
  • 子进程怎么知道(判断)父进程被关闭了
  • 学了进程和线程但不知道应该在什么情况下用哪个
  • help help busy!!! 知道进程的ID号,在程序里如何检查这个进程还在不在?
  • 一用打印机。。system进程就占用cpu100%,大家知道是什么原因? 怎么解决?
  • 如何知道某个程序有多少个进程在运行?
  • POPEN后如何知道哪个是父进程执行的结果
  • 如何确定信号的来源?即如何知道接收到的信号来自于哪一个进程号?
  • 请问下如何知道进程有没有从内存读写数据?
  • 怎么知道抓到的数据包所对应的进程
  • 如何知道一个进程打开了哪些文件?
  • jquery iis7站长之家
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 求教:知道当前时间,如何得到N天前的时间 ?
  • 高分:有那位大大虾知道通过Socket得到服务器的类型,等等
  • 我用servlet实现文件上传,可我不知道怎么随意的得到服务器的路径。
  • Ctrl键的ascii码值是多少,哪位知道?Ctrl+c键如何得到.
  • 那位大虾知道怎样得到本机的IP地址或计算机名?
  • 如果知道一个函数的地址或函数名,如何得到函数所在的文件名?
  • 一个JSP问题:请问如何得到document.referrer内容?我想知道连到A.jsp页面的用户从何处链接来得。
  • linux下获取本机ip,得到多个,怎么知道是哪一个
  • 在linux程序里面,知道一个函数地址,改函数是属于某个动态库的,怎么样得到这个动态库的全路径名??
  • 如何知道在linux下面如何知道mysql服务是用哪个端口啊
  • 那位知道怎样能知道 linux C/C++文件它所依赖的文件
  • 哪位大哥知道?我怎样知道LINUX redhat 7.2下声音设备由哪个应用程序占用?
  • 我做了个简单的留言板,不知道如何知道留言者的ip地址?
  • red hat linux 9.0安装问题,不知道有人知道吗?
  • 我插入USB设备,知道是1-1:1.0下面,如何知道ttyUSB?
  • UI小问题,可我就是不知道怎么实现,或许您知道……
  • 我在rh8下装了wine,可是我不知道装到哪里了,那位知道默认路径?
  • 请问如何在不知道对方IP,仅知道MAC地址的情况下和对方通信呢?
  • 不知道这个问题是否有人知道!
  • 在不知道表结构的前提下,怎样把该表的一条记录打印出来?(即不知道各字段类型时,用哪个方法?)
  • SUN OS5.8怎么没有make ,我想装APACHE2.0不知道怎么下手,原来的APACHE1.3有不知道怎么卸载
  • 要在arm开发板上实现DHCP+方式拨号上网,谁能给点下手的思路,知道不知道都给点意见吧?
  • 可信计算你知道嘛?红旗的可信计算你知道嘛?
  • 我装了jbuilder5,知道sn,但没有注册,每次启动都要跳出个jbuilder licence,要你注册,烦得很,那位大虾知道注册码,千万告诉小弟我,谢了
  • 我现在只有debian kernel 2.6,我把disc1的iso格式释放到了我的硬盘上面,我不知道里面有什么软件,也不知道怎样安装这些软件,莫展一筹
  • 一JSP网站,统一指定一个errorPage页面,统一处理异常,在指定的errorPage页面中,我想知道具体是哪个页面出错的,即想知道出错页面的具
  • 用JAVA过行无线网络编程,我现在只知道要用到J2ME,可其它就都不知道了,可不可以介绍一下
  • 菜鸟在c盘装了win2000,想在剩下的空间装Red Hat Enterprise Linux 3,在创建linux分区的时候,不知道都创建什么分区??我知道要创建一个
  • 我的一个问题,我不知道,你知道!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3