title: Maximum number of TCP connections in Python?
body: <p>I am working in Python on localhost. I wrote a raw server just read TCP socket, say in port 50001. </p>
  
  <p>Then I tried max client connections:</p>
  
  <pre><code>def rawMultiConn(threadnum = 10000):
      g_event = threading.Event()
      def threadfn():
          sockets = [socket.socket(socket.AF_INET, socket.SOCK_STREAM)
                     for i in range(threadnum)]
          for s in sockets:
              s.connect(('localhost', SERVER_PORT))
          g_event.wait()
          for s in sockets: s.close()
  
      t = threading.Thread(target = threadfn)
      t.start()
      g_event.set()
      t.join()
  </code></pre>
  
  <p>but after about 3000 connections, exception occurs:</p>
  
  <blockquote>
    <p>[Errno 10055] An operation on a socket could not be performed because
    the system lacked sufficient buffer space or because a queue was full</p>
  </blockquote>
  
  <p>So how can I resolve it and max the connection?</p>