The parent process should close its copy of the socket descriptor.
@@ -174,6 +174,8 @@ if __name__ == '__main__':
processes.append(p)
processes_map[conn_id] = p
p.start()
+ socket.close()
+ # close this process' copy of the socket
#
l = basic_protocols.ServerListener(endpoint, accept_callback)