搜索

44.2. 使用库调用设置进程优先级

download PDF

可以使用 sched_setscheduler() 函数来设置调度程序策略和其他参数。目前,实时策略具有一个参数,sched_priority。这个参数用于调整进程的优先级。

sched_setscheduler() 函数需要三个参数,格式为: sched_setscheduler(pid_t pid, int policy, const struct sched_param *sp);.

注意

sched_setscheduler(2) man page 列出了 sched_setscheduler 的所有可能返回值,包括错误代码。

如果进程 ID 为零,sched_setscheduler() 函数将作用于调用的进程。

以下代码摘录将当前进程的调度程序策略设置为 SCHED_FIFO 调度程序策略,并将优先级设置为 50

struct sched_param sp = { .sched_priority = 50 };
int ret;

ret = sched_setscheduler(0, SCHED_FIFO, &sp);
if (ret == -1) {
  perror("sched_setscheduler");
  return 1;
}
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.