Issue #11569: use absolute path to the sysctl command in multiprocessing to

ensure that it will be found regardless of the shell PATH. This ensures
that multiprocessing.cpu_count works on default installs of MacOSX.

Patch by Steffen Daode Nurpmeso.
This commit is contained in:
Ronald Oussoren 2011-03-16 09:47:15 -04:00
parent b3f756404a
commit 2ab5994dbe
3 changed files with 9 additions and 1 deletions

View File

@ -116,8 +116,11 @@ def cpu_count():
except (ValueError, KeyError):
num = 0
elif 'bsd' in sys.platform or sys.platform == 'darwin':
comm = '/sbin/sysctl -n hw.ncpu'
if sys.platform == 'darwin':
comm = '/usr' + comm
try:
with os.popen('sysctl -n hw.ncpu') as p:
with os.popen(comm) as p:
num = int(p.read())
except ValueError:
num = 0

View File

@ -587,6 +587,7 @@ Tim Northover
Joe Norton
Neal Norwitz
Michal Nowikowski
Steffen Daode Nurpmeso
Nigel O'Brian
Kevin O'Connor
Tim O'Malley

View File

@ -43,6 +43,10 @@ Core and Builtins
Library
-------
- Issue #11569: use absolute path to the sysctl command in multiprocessing to
ensure that it will be found regardless of the shell PATH. This ensures
that multiprocessing.cpu_count works on default installs of MacOSX.
- Issue #11500: Fixed a bug in the os x proxy bypass code for fully qualified
IP addresses in the proxy exception list.