summaryrefslogtreecommitdiff
path: root/Tools/ccbench/ccbench.py
diff options
context:
space:
mode:
authorAntoine Pitrou <solipsis@pitrou.net>2011-01-15 11:39:23 +0000
committerAntoine Pitrou <solipsis@pitrou.net>2011-01-15 11:39:23 +0000
commit2254368df927549bccca7e243e59876584bad2e0 (patch)
tree66b3162015ab0e67d417f69f97a35f0ba9538585 /Tools/ccbench/ccbench.py
parent79ee3cd66781264ae87a8a269b686ae9e3b5bc8c (diff)
downloadcpython-2254368df927549bccca7e243e59876584bad2e0.tar.gz
Avoid ResourceWarnings in ccbench
Diffstat (limited to 'Tools/ccbench/ccbench.py')
-rw-r--r--Tools/ccbench/ccbench.py25
1 files changed, 13 insertions, 12 deletions
diff --git a/Tools/ccbench/ccbench.py b/Tools/ccbench/ccbench.py
index 569ec217e4..02b192f487 100644
--- a/Tools/ccbench/ccbench.py
+++ b/Tools/ccbench/ccbench.py
@@ -276,19 +276,19 @@ def _recv(sock, n):
return sock.recv(n).decode('ascii')
def latency_client(addr, nb_pings, interval):
- sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
- _time = time.time
- _sleep = time.sleep
- def _ping():
- _sendto(sock, "%r\n" % _time(), addr)
- # The first ping signals the parent process that we are ready.
- _ping()
- # We give the parent a bit of time to notice.
- _sleep(1.0)
- for i in range(nb_pings):
- _sleep(interval)
+ with socket.socket(socket.AF_INET, socket.SOCK_DGRAM) as sock:
+ _time = time.time
+ _sleep = time.sleep
+ def _ping():
+ _sendto(sock, "%r\n" % _time(), addr)
+ # The first ping signals the parent process that we are ready.
_ping()
- _sendto(sock, LAT_END + "\n", addr)
+ # We give the parent a bit of time to notice.
+ _sleep(1.0)
+ for i in range(nb_pings):
+ _sleep(interval)
+ _ping()
+ _sendto(sock, LAT_END + "\n", addr)
def run_latency_client(**kwargs):
cmd_line = [sys.executable, '-E', os.path.abspath(__file__)]
@@ -363,6 +363,7 @@ def run_latency_test(func, args, nthreads):
for t in threads:
t.join()
process.wait()
+ sock.close()
for recv_time, chunk in chunks:
# NOTE: it is assumed that a line sent by a client wasn't received