From 06b0cdbfaa7f016ebf5cf5aa8e069e038b013f09 Mon Sep 17 00:00:00 2001 From: "P. Christeas" Date: Tue, 18 Jan 2011 14:59:03 +0200 Subject: net-rpc: Send all data in one TCP packet This optimises the TCP layer significantly, avoids ACK delays. Inspired by: Julien Thewys bzr revid: p_christ@hol.gr-20110118125903-5hrg89kpi1vuadv9 --- bin/tiny_socket.py | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) (limited to 'bin/tiny_socket.py') diff --git a/bin/tiny_socket.py b/bin/tiny_socket.py index 6a0d9371ef5..44f7db04f01 100644 --- a/bin/tiny_socket.py +++ b/bin/tiny_socket.py @@ -61,15 +61,7 @@ class mysocket: def mysend(self, msg, exception=False, traceback=None): msg = cPickle.dumps([msg,traceback]) - size = len(msg) - self.sock.send('%8d' % size) - self.sock.send(exception and "1" or "0") - totalsent = 0 - while totalsent < size: - sent = self.sock.send(msg[totalsent:]) - if sent == 0: - raise RuntimeError, "socket connection broken" - totalsent = totalsent + sent + self.sock.sendall('%8d%s%s' % (len(msg), exception and "1" or "0", msg)) def myreceive(self): buf='' -- cgit v1.2.3