title: Opening and communicating with a subprocess
body: <p>I have a subprocess that I use. I must be able to asynchronously read and write to/from this process to it's respective stdout and stdin.</p>
  
  <p>How can I do this? I have looked at <code>subprocess</code>, but the <code>communicate</code> method waits for process termination (which is not what I want) and the <code>subprocess.stdout.read</code> method can block.</p>
  
  <p>The subprocess is <strong>not</strong> a Python script but can be edited if absolutely necessary. In total I will have around 15 of these subprocesses.</p>