相关疑难解决方法(0)

多处理启动了太多的Python VM实例

我正在编写一些多处理代码(Python 2.6.4,WinXP),它生成运行后台任务的进程.在玩一些简单的例子时,我遇到了一个问题,我的代码只是不断产生新的进程,即使我只是告诉它产生一个固定的数字.

程序本身运行正常,但如果我查看Windows TaskManager,我会看到新的'python.exe'进程出现.随着程序的运行,它们会越来越多地产生(最终使我的机器挨饿).


例如,
我希望下面的代码启动2个python.exe进程.第一个是程序本身,第二个是它产生的子进程.知道我做错了什么吗?

import time
import multiprocessing


class Agent(multiprocessing.Process):
    def __init__(self, i):
        multiprocessing.Process.__init__(self)
        self.i = i

    def run(self):
        while True:
            print 'hello from %i' % self.i
            time.sleep(1)


agent = Agent(1)
agent.start()
Run Code Online (Sandbox Code Playgroud)

python windows multiprocessing

14
推荐指数
1
解决办法
4856
查看次数

标签 统计

multiprocessing ×1

python ×1

windows ×1