title: Which Python async library would be best suited for my code? Asyncore? Twisted?
body: <p>I have a program I'm working on that will be reading from two 'network sources' simultaneously. I wanted to try out an asynchronous approach rather than use threading. This has lead me to wonder which library to use...</p>
  
  <p>I've come up with some simple example code that kind of demonstrates what my program will be doing:</p>
  
  <pre><code>import sniffer
  
  def first():
      for station in sniffer.sniff_wifi():
          log(station.mac())
  
  def second():
      for station in sniffer.sniff_ethernet():
          log(station.mac())
  
  first()
  second()
  </code></pre>
  
  <p>The two <code>sniffer</code> methods look somewhat like this:</p>
  
  <pre><code>def sniff_wifi(self):
  
      while True:
          yield mac_address
  </code></pre>
  
  <p>The <code>while True</code> loop obviously makes them blocking.</p>
  
  <p>I want to use <code>asyncore</code> for this as it is part of the standard library. No 3rd party dependencies are a bonus. However, that doesn't mean I won't use it if you recommend I do...</p>
  
  <p>Can I achieve what I'm trying to do with asyncore? If so, could you show me how to convert my example code to 'asyncore code'? Do you know of any good asyncore tutorials?</p>