Removed hooke.compat.forking since issue8534 can't be monkey patched.
You'll have to apply simonsteiner's issue8534 patch
http://bugs.python.org/file17092/forking.patch
to your Python's multiprocessing.forking by hand (on MS Windows). See
http://bugs.python.org/issue8534
http://docs.python.org/library/multiprocessing.html#windows
Here's what happens on Linux:
1) main program starts running
2) monkey patch applied
3) multiprocessing.Process() forks off the subprocess.
a) child process inherits parent's memory, getting all currently
imported libraries for free.
b) child process continues successful run.
4) main process continues successful run.
Here's what happens on MS Windows:
1) main program starts running
2) monkey patch applied
3) multiprocessing.Process() spawns subprocess, feeding its pickling
state to the child through the connecting socket.
a) child process starts, loading (unpatched) base Python libraries
to figure out what it should do.
b) child process starts reading pickled parent state.
c) child process attempts to find hooke to unpickle parent state.
d) child process cannot find hooke (with unpatched
multiprocessing) and dies.
4) main process dies from lack of child.
After applying simonsteiner's issue8534 patch, Windows looks like:
1) main program starts running
2) multiprocessing.Process() spawns subprocess, feeding its pickling
state to the child through the connecting socket.
a) child process starts, loading (patched) base Python libraries
to figure out what it should do.
b) child process starts reading pickled parent state.
c) child process attempts to find hooke to unpickle parent state.
d) child process loads hooke.
e) child process continues successful run.
3) main process continues successful run.