Twisted: UDP socket not closed.

MRAB python at mrabarnett.plus.com
Thu Apr 19 22:46:07 EDT 2012


On 20/04/2012 02:29, Luther Edwards wrote:
> Did anyone in the group ever have an answer to Kevac’s question, I’m
> having a similar issue?
>
> Thanks in advance, Luther
>
After a brief look at the documentation, I can only suggest that you
try the .loseConnection method.
>
>   [Python] Twisted: UDP socket not closed.
>
> Description: Kevac Marko
> <http://grokbase.com/user/Kevac-Marko/tTjuHcXzmQtuttsnhLfi5e>
>
> 	
>
> Kevac Marko <http://grokbase.com/user/Kevac-Marko/tTjuHcXzmQtuttsnhLfi5e>
> Dec 22, 2007 at 9:02 am <http://grokbase.com/g/python/python-list/2007/12>
>
> Hi.
>
> I have to send UDP packets very often. Approx twice in a second.
> But socket is not closed after sending packet. So soon i bump into
> open sockets\files limit.
> How to close socket after sending data?
>
> Python 2.5, Twisted
>
> class DataClient(DatagramProtocol):
>
> def __init__(self, address, datagram = "PONG"):
> self.address, self.datagram = address, datagram
>
> def startProtocol(self):
> self.transport.socket.setsockopt(socket.SOL_SOCKET, \
> socket.SO_BROADCAST, True)
> self.transport.connect(self.address[0], self.address[1])
> self.sendDatagram()
>
> def sendDatagram(self):
> self.transport.write(self.datagram)
> debug("Data client: Sending to %s" % repr(self.address))
>
> while True:
> clientprotocol = DataClient(("255.255.255.255", 5999), data)
> reactor.listenUDP(0, clientprotocol).stopListening()
>
> knight at rknb:~$ ls -la /proc/15429/fd/ | wc -l
> 43
> knight at rknb:~$ ls -la /proc/15429/fd/ | wc -l
> 44
> knight at rknb:~$ ls -la /proc/15429/fd/ | wc -l
> 44
> knight at rknb:~$ ls -la /proc/15429/fd/ | wc -l
> 44
> knight at rknb:~$ ls -la /proc/15429/fd/ | wc -l
> 45
> knight at rknb:~$ ls -la /proc/15429/fd/ | wc -l
> 45
> knight at rknb:~$ ls -la /proc/15429/fd/ | wc -l
> 46
>
>
>




More information about the Python-list mailing list