##// END OF EJS Templates
Move displayhook for ZMQ shell to zmq.displayhook, and rename to make the difference clearer.
Move displayhook for ZMQ shell to zmq.displayhook, and rename to make the difference clearer.

File last commit:

r3666:a6a0636a
r4067:8173958e
Show More
wmanager.py
44 lines | 1.1 KiB | text/x-python | PythonLexer
Fernando Perez
Add little soma workflow example
r3608 """Mock workflow manager.
This is a mock work manager whose submitted 'jobs' simply consist of executing
a python string. What we want is to see the implementation of the ipython
controller part.
"""
from __future__ import print_function
import atexit
import sys
from subprocess import Popen
def cleanup(controller, engines):
"""Cleanup routine to shut down all subprocesses we opened."""
import signal, time
print('Starting cleanup')
print('Stopping engines...')
for e in engines:
e.send_signal(signal.SIGINT)
print('Stopping controller...')
# so it can shut down its queues
controller.send_signal(signal.SIGINT)
time.sleep(0.1)
print('Killing controller...')
controller.kill()
print('Cleanup done')
if __name__ == '__main__':
# Start controller in separate process
MinRK
move IPython.zmq.parallel to IPython.parallel
r3666 cont = Popen(['python', '-m', 'IPython.parallel.ipcontrollerapp'])
Fernando Perez
Add little soma workflow example
r3608 print('Started controller')
# "Submit jobs"
eng = []
for i in range(4):
eng.append(Popen(['python', 'job_wrapper.py','x=%s' % i]))
# Ensure that all subpro
atexit.register(lambda : cleanup(cont, eng))