【问题标题】:Running 2 tasks at the same time using Fabric使用 Fabric 同时运行 2 个任务
【发布时间】:2018-01-19 20:28:53
【问题描述】:

出于自动化目的,我使用的是 Fabric。但我不能同时运行 2 个任务? 例如,我想运行任务 1 来收集 tmp 文件夹中的数据。我想运行将生成数据并放入 tmp 的任务 2。 Tas1 2 将在任务 2 之前运行一点。

这是我的 sudo 代码:

output1 = run("./task1_data_logger &")
output2 = run("./task2_main_program")

结果:Task2_main_program 运行良好,但我根本没有看到 task1_data_logger 运行。我以为我放了 & 以便 Task1 可以在后台运行。

我已经阅读了并行执行文档,但它更适合在多个主机中并行运行,这不是我的情况。 任何人都知道如何同时执行 2 个任务而不是串行执行?

谢谢。

【问题讨论】:

    标签: python parallel-processing fabric


    【解决方案1】:

    task1 根本没有运行,因为在 Fabric 中运行带有 & 的命令不起作用。 这是因为,在 linux 中,当您注销会话时,与其关联的所有进程都将终止。

    因此,如果您想确保某个命令即使在您退出会话后仍能继续运行,您需要像这样运行它:

    run('nohup sh 命令&')

    【讨论】:

    • 感谢您的建议,我今天会尝试并保持此线程更新结果。
    猜你喜欢
    • 1970-01-01
    • 2013-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多