How do I reconnect a disconnected socket?

pianomaestro at pianomaestro at
Fri Mar 28 15:57:56 CET 2008

Did you try just creating a new socket every time you do a connect ?

On Mar 28, 10:01 am, Jason Kristoff <deevine-removethis-
s... at> wrote:
> I'm trying to make something that once it is disconnected will
> automatically try to reconnect.  I'll add some more features in later so
> it doesn't hammer the server but right now I just want to keep it simple
> and get that part working.  The problem is that when I use sock.close I
> get an error message of
> Bad File Descriptor
> and if I either use shutdown or just go straight to reconnecting I get:
> Transport endpoint is already connected
> This is what I've got right now:
> #! /usr/bin/env python
> import socket, string
> sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
> def doconn():
>      sock.connect(("localhost", 1234))
> def dodiscon():
>      sock.close()
>      doconn()
> doconn()
> while (1):
>      buffer = sock.recv(1024)
>      if not buffer:
>          dodiscon()

More information about the Python-list mailing list