socket.sendall() "counter" parameter
18 Apr
2014
18 Apr
'14
2:34 p.m.
With current socket.sendall() implementation if an error occurs it's impossible to tell how much data was sent. As such I'm wondering whether it would make sense to add a "counter" parameter which gets incremented internally: sent = 0 try: sock.sendall(data, counter=sent) except socket.error as err: priint("only %s bytes were sent" % sent) This would both allow to not lose information on error and avoid keeping track of the total data being sent, which usually requires and extra len() call. E.g. when sending a file: file = open('somefile', 'rb') total = 0 while True: chunk = file.read(8192) if not chunk: break sock.sendall(chunk, counter=total) Thoughts? -- Giampaolo - http://grodola.blogspot.com
3653
Age (days ago)
3653
Last active (days ago)
10 comments
5 participants
participants (5)
-
Antoine Pitrou
-
Chris Angelico
-
Giampaolo Rodola'
-
Guido van Rossum
-
Masklinn