From: Richard Oudkerk Date: Sat, 2 Nov 2013 17:05:07 +0000 (+0000) Subject: Issue #19478: Make choice of semaphore prefix more flexible. X-Git-Tag: v3.4.0b1~424 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e943697750a5828c0b4937ab28a301001700ad84;p=python Issue #19478: Make choice of semaphore prefix more flexible. --- diff --git a/Lib/multiprocessing/process.py b/Lib/multiprocessing/process.py index c2fc581b1f..cd52736a70 100644 --- a/Lib/multiprocessing/process.py +++ b/Lib/multiprocessing/process.py @@ -301,10 +301,16 @@ class _MainProcess(BaseProcess): self._parent_pid = None self._popen = None self._config = {'authkey': AuthenticationString(os.urandom(32)), - 'semprefix': 'mp'} + 'semprefix': '/mp'} # Note that some versions of FreeBSD only allow named - # semaphores to have names of up to 14 characters. Therfore + # semaphores to have names of up to 14 characters. Therefore # we choose a short prefix. + # + # On MacOSX in a sandbox it may be necessary to use a + # different prefix -- see #19478. + # + # Everything in self._config will be inherited by descendant + # processes. _current_process = _MainProcess() diff --git a/Lib/multiprocessing/synchronize.py b/Lib/multiprocessing/synchronize.py index 82c30a27a5..9d8e282477 100644 --- a/Lib/multiprocessing/synchronize.py +++ b/Lib/multiprocessing/synchronize.py @@ -115,8 +115,8 @@ class SemLock(object): @staticmethod def _make_name(): - return '/%s-%s' % (process.current_process()._config['semprefix'], - next(SemLock._rand)) + return '%s-%s' % (process.current_process()._config['semprefix'], + next(SemLock._rand)) # # Semaphore