Message 215178 - Python tracker
Using asyncio and the IOCP eventloop it is not necessary to use threads. (Windows may use worker threads for overlapped IO, but that is hidden from Python.) See https://code.google.com/p/tulip/source/browse/examples/child_process.py for vaguely "expect-like" interaction with a child python process which works on Windows. It writes commands to stdin, and reads results/tracebacks from stdout/stderr. Of course, it is also possible to use overlapped IO directly.