title: Multiprocessing launching too many instances of Python VM
body: <p>I am writing some multiprocessing code (Python 2.6.4, WinXP) that spawns processes to run background tasks.  In playing around with some trivial examples, I am running into an issue where my code just continuously spawns new processes, even though I only tell it to spawn a fixed number.</p>
  
  <p>The program itself runs fine, but if I look in Windows TaskManager, I keep seeing new 'python.exe' processes appear.  They just keep spawning more and more as the program runs (eventually starving my machine).  </p>
  
  <p><br>
  For example,<br>
  I would expect the code below to launch 2 python.exe processes.  The first being the program itself, and the second being the child process it spawns.  Any idea what I am doing wrong?</p>
  
  <pre><code>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()
  </code></pre>