pthread_setschedprio函数用法详解
pthread_setschedprio函数简介
- 头文件包含
#include <pthread.h>
- 函数定义
int pthread_setschedprio(pthread_t thread , int prio );
- 编译链接选项
-pthread
pthread_setschedprio函数常见使用错误
- 链接错误
undefined reference to `pthread_setschedprio'
解决办法:添加链接选项
-pthread
- 编译错误
warning: implicit declaration of function ‘pthread_setschedprio’ [-Wimplicit-function-declaration]
解决办法:包含头文件
#include <pthread.h>
pthread_setschedprio函数详细描述
pthread_setschedprio ()函数将线程thread的调度优先级设置为prio 中指定的值(相比之下,pthread_setschedparam (3)同时更改线程的调度策略和优先级)
pthread_setschedprio函数返回值
成功时,此函数返回0;出错时,它返回一个非零错误号。如果pthread_setschedprio ()失败,thread的调度优先级不变。
pthread_setschedprio函数错误码
- EINVAL prio对于指定线程的调度策略无效。
- EPERM 调用方没有设置指定优先级的适当权限。
- 找不到ID为thread的线程。
POSIX.1还记录了pthread_setschedparam (3)的 ENOTSUP (“试图将优先级设置为不受支持的值”)错误
pthread_setschedprio函数其他说明
有关更改线程调度优先级所需权限及其影响的说明,以及每个调度策略中优先级的允许范围的详细信息,请参阅sched (7)
评论区