talon at www.tempestnetworks.net
Fri Nov 30 17:52:43 CET 2001
On Fri, 30 Nov 2001 17:45:23 +0100, Carsten Gaebler <clpy at snakefarm.org> wrote:
>talon at www.tempestnetworks.net wrote:
>> On Fri, 30 Nov 2001 15:22:21 +0100, Carsten Gaebler <clpy at snakefarm.org> wrote:
>> >However, there seems to be a problem with restarting the server. I
>> >have to wait a minute or so to avoid an 'address is already in use'
>> Use the setsockopt function on the socket objet, pass it the value
>> SO_REUSEADDR (defined in the socket module).
>Nope, doesn't help. My code is:
>server = SocketServer.TCPServer(('', 8000), TestRequestHandler)
>server.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
Ah ha, the problem is due to how you're using TCPServer. Try:
SocketServer.TCPServer.reuse_address = 1
server = SocketServer.TCPServer( ('', 8000), TestRequestHandler )
The problem is that the socket is bound (TCPServer.__init__ calls
server_bind( )), it logically follows that you have to set this particular
socket option before the socket is bound :)
>'In iteger arithetric divsion is no the oposite of multiplication.'
> -- scenes from comp.lang.python
Visits always give pleasure: if not on arrival, then on the departure.
-- Edouard Le Berquier, "Pensees des Autres"
More information about the Python-list