title: Asynchronous threading using python
body: <p>I am learning multithreading in python and don't understand why the thread isn't acting asynchronous.</p>
  
  <p>Here is my code.</p>
  
  <pre><code>def send_email():
      ....
  
  thread1 = threading.Thread(name='thread1',target=send_email)
  thread1.start()
  return 'Email sent'
  </code></pre>
  
  <p>I don't understand why, but the thread1 is waiting until the target is completed and then coming to the next line.</p>
  
  <p>Need help understanding this.</p>