title: How do coroutines improve performance
body: <p>I've been seeing a lot of talks and articles on coroutines in python. They are considered to be "microthreads" and I've heard they improve performance.</p>
  
  <p>How do coroutines improve performance? From what I've seen so far, they are single threaded and execute in sequence. I agree that from a design perspective they are quite elegant especially in producer/consumer type applications.</p>
  
  <p>I guess I am missing the point. Can someone help explain?</p>