【发布时间】:2015-09-03 20:08:15
【问题描述】:
我在 python 中有一个带参数的函数。在同一个文件中,我调用了该函数(称之为 foo)。 python(for Win7) 中是否有任何方法可以从父进程创建不同的独立进程,每个进程使用不同的参数集执行 foo (显然也独立于父进程)? 控制台也可以附加到这些进程吗?
PS:我知道如果它是一个单独的脚本或 exe,那么我们可以使用 Popen.subprocess() 模块。但这里的问题是将函数(代码)分配给不同的进程(彼此独立以及父进程)。
这就是函数。
import subprocess
import os
import string
def add(x,y):
return x+y
这是输入文件:
1 2
3 4
5 6
现在,如果函数被编写在某个单独的文件(add.py)中,我们可以直接使用 subprocess.Popen() 为输入文件中的每组参数调用“add.py”。但是,如果函数与主文件写在同一个文件中,那么如何为显示的输入文件中的每组参数分配一个新进程? 我不能使用 fork(),因为没有适用于 Windows 的。
【问题讨论】:
-
@Sam 但我正在读取一个文件(一个循环)并为每组 args 每次创建一个新进程。此外,它们应该独立于父进程,并且应该有一个单独的控制台。跨度>
-
为什么不在一个线程中运行每个函数调用? - 为什么需要一个单独的过程? - 如果您希望每个线程都有一个窗口,就像监视器一样,请考虑像 tKinter 这样的简单 GUI,并在创建新线程时添加一个文本框..
-
@Henrik 线程将依赖于父进程。我需要该函数处于无限循环中。