MCPcopy Index your code
hub / github.com/pyload/pyload / _write_func

Method _write_func

module/network/XDCCRequest.py:73–95  ·  view source on GitHub ↗
(self, buf)

Source from the content-addressed store, hash-verified

71 return sock
72
73 def _write_func(self, buf):
74 size = len(buf)
75
76 self.received += size
77
78 self.fh.write(buf)
79
80 if self.bucket:
81 time.sleep(self.bucket.consumed(size))
82
83 else:
84 # Avoid small buffers, increasing sleep time slowly if buffer size gets smaller
85 # otherwise reduce sleep time percentequal (values are based on tests)
86 # So in general cpu time is saved without reducing bandwidth too much
87
88 if size < self.last_recv_size:
89 self.sleep += 0.002
90 else:
91 self.sleep *= 0.7
92
93 self.last_recv_size = size
94
95 time.sleep(self.sleep)
96
97 def _send_ack(self):
98 # acknowledge data by sending number of received bytes

Callers 1

downloadMethod · 0.95

Calls 3

consumedMethod · 0.80
writeMethod · 0.45
sleepMethod · 0.45

Tested by

no test coverage detected