call site 0 for _thread.NamedThreadPool.start
execnet/testing/test_gateway.py - line 408
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
   def test_many_popen(self):
       num = 4
       l = []
       for i in range(num):
->         l.append(py.execnet.PopenGateway())
       channels = []
       for gw in l:
           channel = gw.remote_exec("""channel.send(42)""")
           channels.append(channel)
   ##        try:
   ##            while channels:
   ##                channel = channels.pop()
   ##                try:
   ##                    ret = channel.receive()
   ##                    assert ret == 42
   ##                finally:
   ##                    channel.gateway.exit()
   ##        finally:
   ##            for x in channels:
   ##                x.gateway.exit()
       while channels:
           channel = channels.pop()
           ret = channel.receive()
           assert ret == 42
execnet/register.py - line 65
60
61
62
63
64
65
   def __init__(self, python=sys.executable):
       """ instantiate a gateway to a subprocess 
               started with the given 'python' executable. 
           """
       cmd = '%s -u -c "exec input()"' % python
->     super(PopenGateway, self).__init__(cmd)
execnet/register.py - line 54
51
52
53
54
   def __init__(self, cmd):
       infile, outfile = os.popen2(cmd)
       io = inputoutput.Popen2IO(infile, outfile)
->     super(PopenCmdGateway, self).__init__(io=io)
execnet/register.py - line 31
29
30
31
   def __init__(self, io):
       self._remote_bootstrap_gateway(io)
->     super(InstallableGateway, self).__init__(io=io, _startcount=1) 
execnet/gateway.py - line 51
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
   def __init__(self, io, execthreads=None, _startcount=2): 
       """ initialize core gateway, using the given 
               inputoutput object and 'execthreads' execution
               threads. 
           """
       global registered_cleanup
       self._execpool = WorkerPool(maxthreads=execthreads)
       self._io = io
       self._outgoing = Queue.Queue()
       self._channelfactory = ChannelFactory(self, _startcount)
       if not registered_cleanup:
           atexit.register(cleanup_atexit)
           registered_cleanup = True
       _active_sendqueues[self._outgoing] = True
       self._pool = NamedThreadPool(receiver = self._thread_receiver, 
->                                  sender = self._thread_sender)
thread/pool.py - line 173
170
171
172
173
   def __init__(self, **kw): 
       self._namedthreads = {}
       for name, value in kw.items(): 
->         self.start(name, value)