MULTIPROCESSING.ECLASS

章节: eclass-manpages (5)
更新时间: 2024 年 11 月
索引 返回主内容

名称

multiprocessing.eclass - 多进程辅助函数

描述

multiprocessing eclass 包含一套实用函数,可用于控制并行多作业执行。最常见的用途是处理 MAKEOPTS 以获取作业数量。

支持的 EAPI

7 8

示例

src_compile() {
  # custom build system that does not support most of MAKEOPTS
  ./mybs -j$(makeopts_jobs)
}

函数

get_nproc [${fallback:-1}]
尝试确定可用的处理单元数量。如果无法确定该值,则打印提供的回退值。如果没有提供回退值,则默认为 1。
get_makeopts_jobs [default-jobs]
返回从 make 选项(MAKEOPTS、GNUMAKEFLAGS、MAKEFLAGS)中提取的作业数量。如果 make 选项未指定数量,则返回提供的默认值或 1。
makeopts_jobs [${MAKEOPTS}] [${inf:-$(( $(get_nproc) + 1 ))}]
搜索参数(或合理的默认值)并提取其中指定的作业数量。也可用于并行运行非 make 工具。例如,如果用户设置了 MAKEOPTS=-j9,则将输出“9” - 我们无法返回该数字,因为 bash 会将其规范化为 [0, 255]。如果标志未指定 -j 标志,则显示“1”,因为这是 `make` 使用的默认值。如果标志指定 -j 但没有数字,则返回 ${inf}(默认为 nproc)。
get_makeopts_loadavg [default-loadavg]
返回从 make 选项(MAKEOPTS、GNUMAKEFLAGS、MAKEFLAGS)中提取的负载平均值。如果 make 选项未指定值,则返回提供的可选默认值或 999。
makeopts_loadavg [${MAKEOPTS}] [${inf:-999}]
搜索参数(或合理的默认值)并提取为负载平均值设置的值。对于基于 make 和 ninja 的构建,这意味着新作业不仅受作业值限制,还受当前负载限制 - 由于 I/O 而不是仅由于 CPU 负载,这可能会变得过高。请注意,返回的数字可能是浮点数。测试您的软件是否支持它。如果没有指定限制或在不使用数字的情况下使用 --load-average,则返回 ${inf}(默认为 999)。

作者

Brian Harring <[email protected]>
Mike Frysinger <[email protected]>

维护者

[email protected]

报告 Bug

请通过 https://bugs.gentoo.org/ 报告 Bug

文件

multiprocessing.eclass

参见

ebuild(5)
https://gitweb.gentoo.org/repo/gentoo.git/log/eclass/multiprocessing.eclass


索引

名称
描述
支持的 EAPI
示例
函数
作者
维护者
报告 Bug
文件
参见

本文件由 man2html 使用手册页创建。
时间: 2024 年 11 月 12 日格林威治标准时间 03:27:01