EnforceLimits 类

用于强制实施资源限制的基类。

继承
builtins.object
EnforceLimits

构造函数

EnforceLimits(mem_in_mb: Optional[int] = None, cpu_time_in_s: Optional[int] = None, wall_time_in_s: Optional[int] = None, num_processes: Optional[int] = None, grace_period_in_s: Optional[int] = None, total_wall_time_in_s: Optional[int] = None)

参数

mem_in_mb
默认值: None
cpu_time_in_s
默认值: None
wall_time_in_s
默认值: None
num_processes
默认值: None
grace_period_in_s
默认值: None
total_wall_time_in_s
默认值: None

方法

execute

在应用资源约束的情况下执行函数。

subprocess_func

创建子进程可以执行的函数。

execute

在应用资源约束的情况下执行函数。

execute(working_dir: str, func: Callable[[…], T], *args: Any, **kwargs: Any) -> Tuple[Optional[T], Optional[BaseException], float]

参数

working_dir
必需

用于临时文件的工作目录

func
必需

要执行的函数

args
必需

要传递给函数的位置参数的列表

kwargs
必需

要传递给函数的关键词参数的列表

返回

值/错误/执行时间元组

subprocess_func

创建子进程可以执行的函数。

static subprocess_func(func: Callable[[…], T], mem_in_mb: Optional[int], cpu_time_limit_in_s: Optional[int], wall_time_limit_in_s: Optional[int], num_procs: Optional[int], grace_period_in_s: int, *args: Any, **kwargs: Any) -> Tuple[Optional[T], Optional[BaseException]]

参数

func
必需

要对其强制实施限制的函数

mem_in_mb
必需
cpu_time_limit_in_s
必需
wall_time_limit_in_s
必需
num_procs
必需
grace_period_in_s
必需
args
必需

函数的参数

kwargs
必需

函数的关键词参数