超时

更新时间:
复制 MD 格式

可以在创建 Sandbox 时设置超时时间,也可以在 Sandbox 创建后调整超时时间。合理设置超时可以避免 Sandbox 长时间空闲占用资源。

创建时配置

Python 示例:

import os

sandbox = Sandbox.create(
    template="code-interpreter-v1",
    timeout=300,
    api_key=os.environ["E2B_API_KEY"],
    api_url=os.environ["E2B_API_URL"],
    domain=os.environ["E2B_DOMAIN"],
)

TypeScript 示例:

const sandbox = await Sandbox.create("code-interpreter-v1", {
  timeoutMs: 300_000,
  apiKey: process.env.E2B_API_KEY,
  apiUrl: process.env.E2B_API_URL,
  domain: process.env.E2B_DOMAIN,
});

创建后调整

创建后可以继续调整当前 Sandbox 的超时时间:

sandbox.set_timeout(600)

也可以通过静态方法调整指定 Sandbox:

Sandbox.set_timeout(sandbox_id, 600)

注意事项

  • Python SDK 和 TypeScript SDK 的超时参数单位不同。Python 示例中通常使用秒,TypeScript 示例中使用毫秒。

  • 超时时间过短可能导致任务提前结束;超时时间过长会增加资源占用和费用风险。

  • 任务完成后仍应主动调用 sandbox.kill()