Fix some ResourceErrors.

Use a context manager for os.popen and explicitly close a socket.
This commit is contained in:
Brian Curtin 2010-11-01 05:10:44 +00:00
parent d4694ed1bb
commit 50be1ca55e
2 changed files with 7 additions and 2 deletions

View File

@ -115,7 +115,8 @@ def cpu_count():
num = 0
elif 'bsd' in sys.platform or sys.platform == 'darwin':
try:
num = int(os.popen('sysctl -n hw.ncpu').read())
with os.popen('sysctl -n hw.ncpu') as p:
num = int(p.read())
except ValueError:
num = 0
else:

View File

@ -1260,7 +1260,11 @@ class _TestManagerRestart(BaseTestCase):
authkey = os.urandom(32)
manager = QueueManager(
address=('localhost', 0), authkey=authkey, serializer=SERIALIZER)
addr = manager.get_server().address
srvr = manager.get_server()
addr = srvr.address
# Close the connection.Listener socket which gets opened as a part
# of manager.get_server(). It's not needed for the test.
srvr.listener.close()
manager.start()
p = self.Process(target=self._putter, args=(manager.address, authkey))