Python 在后台生成进程

Python 在后台生成进程,python,python-3.x,subprocess,nohup,Python,Python 3.x,Subprocess,Nohup,我有一个RabbitMQ消息队列,我在队列中添加了configuration.json。每个配置都具有启动工作流所需的所有信息。因此,如果队列中有5消息,我需要通过启动工作流的消费者提供配置5命令 如果退出生成这些流程的python脚本,那么也将退出实际的工作流流程。这就是问题所在 目前: subprocess.run(f'nextflow run nextflow/workflow_runner.nf-w“gs://nextflow text bucket/work”-c nextflow/n

我有一个RabbitMQ消息队列,我在队列中添加了
configuration.json
。每个配置都具有启动工作流所需的所有信息。因此,如果队列中有5消息,我需要通过启动工作流的消费者提供配置5命令

如果退出生成这些流程的python脚本,那么也将退出实际的工作流流程。这就是问题所在

目前:

subprocess.run(f'nextflow run nextflow/workflow_runner.nf-w“gs://nextflow text bucket/work”-c nextflow/nextflow.config--at_config{config_file}--csv{csv_dest}&',shell=True)
在这里,我只需在命令末尾添加一个
&
符号,以便它在后台运行。如何更改此代码,以便我的python脚本创建一个与此使用者断开连接的新进程

基本上,我如何使用python脚本有效地创建n个进程,这些进程不依赖于启动它们的脚本。我能够登录到机器并连接到进程的每个的输出

这是输出的样子:

N E X T F L O W  ~  version 20.01.0
Launching `nextflow/workflow_runner.nf` [pedantic_pauling] - revision: a8fe3d5045
executor >  google-lifesciences (1)
[92/828e5d] process > prc1             [  0%] 0 of 1
[-        ] process > prc2              -
[-        ] process > prc3              -
[-        ] process > prc4              -
[-        ] process > prc5              -

并在每个过程完成时更新。因此,能够在bg中启动此功能,但能够“连接”到它并检查它到达的位置。

基本上与没有Sadap相同的问题。这并不能回答我的问题。只有当python脚本仍在运行时,Popen才能工作。我在寻找一种比使用
Popen
nohup
在末尾加上
&
更健壮的方法。基本上这个问题与没有Sadap是一样的。这并不能回答我的问题。只有当python脚本仍在运行时,Popen才能工作。我正在寻找一种比使用
Popen
nohup
更健壮的方法,并在最后加上
&