跳至内容

超时


标题:超时

如果正在运行的 Python 代码片段遇到非常非常长的循环或无限循环,你可以让它超时。

“long_string”设置为

import time
time.sleep(3)
from hitchrunpy import ExamplePythonCode
from ensure import Ensure
import hitchbuildpy
import hitchbuild

BUILD_DIR = "/path/to/build_dir/.."

virtualenv = hitchbuildpy.VirtualenvBuild(
    "/path/to/build_dir/../py3.7",
    base_python=hitchbuildpy.PyenvBuild(
        '/path/to/share_dir/../pyenv3.7',
        "3.7",
    ),
)

virtualenv.verify()

pyrunner = ExamplePythonCode(
    virtualenv.bin.python,
    '/path/to/working_dir',
)
pyrunner.with_code(long_string).with_timeout(1.0).run()
hitchrunpy.exceptions.PythonTimeout:
Timed out waiting for exit.

可执行规范

timeout.story storytests 自动生成的文档。