Commit graph

96 commits

Author SHA1 Message Date
Ezio Melotti
f10644983e Merge with 3.2. 2011-10-19 11:06:26 +03:00
Ezio Melotti
e130a52d8a Remove duplication. 2011-10-19 10:58:56 +03:00
Antoine Pitrou
6b4883dec0 PEP 3151 / issue #12555: reworking the OS and IO exception hierarchy. 2011-10-12 02:54:14 +02:00
Charles-François Natali
dc863ddf79 Issue #12981: rewrite multiprocessing_{sendfd,recvfd} in Python. 2011-09-24 20:04:29 +02:00
Charles-François Natali
225aa4f8ec Issue #12996: multiprocessing.connection: transmit the header in network byte
order (endpoints machines can have different endianness).
2011-09-20 19:27:39 +02:00
Éric Araujo
0cdd4454f3 Remove indirection in threading (issue #10968).
The public names (Thread, Condition, etc.) used to be factory functions
returning instances of hidden classes (_Thread, _Condition, etc.),
because (if Guido recalls correctly) this code pre-dates the ability to
subclass extension types.

It is now possible to inherit from Thread and other classes, without
having to import the private underscored names like multiprocessing did.

A doc update will follow: a patch is under discussion on the issue.
2011-07-28 00:28:28 +02:00
Antoine Pitrou
fb96089b13 Fix test_multiprocessing failure under Windows.
(followup to dfaa3a149a92)
2011-07-20 02:01:39 +02:00
Antoine Pitrou
dc19c24832 Silence spurious "broken pipe" tracebacks when shutting down a ProcessPoolExecutor. 2011-07-16 01:51:58 +02:00
Antoine Pitrou
428bc6c48f Issue #12573: Add resource checks for dangling Thread and Process objects. 2011-07-15 22:15:38 +02:00
Antoine Pitrou
c081c0c6a0 Issue #12573: Add resource checks for dangling Thread and Process objects. 2011-07-15 22:12:24 +02:00
Antoine Pitrou
600012028e Add comment 2011-07-09 01:03:46 +02:00
Antoine Pitrou
71a28a9174 Rebind locally the globals which can be looked up at shutdown
(to avoid the warnings seen on a buildbot)
2011-07-09 01:03:00 +02:00
Charles-François Natali
723585bbaf Merge issue #12352: Fix a deadlock in multiprocessing.Heap when a block is
freed by the garbage collector while the Heap lock is held.
2011-07-02 14:43:11 +02:00
Charles-François Natali
a4a04069fd Merge issue #12352: Fix a deadlock in multiprocessing.Heap when a block is
freed by the garbage collector while the Heap lock is held.
2011-07-02 14:39:53 +02:00
Charles-François Natali
778db49da9 Issue #12352: Fix a deadlock in multiprocessing.Heap when a block is freed by
the garbage collector while the Heap lock is held.
2011-07-02 14:35:49 +02:00
Victor Stinner
395dc58ee7 (merge 3.2) Issue #12285: multiprocessing.Pool() raises a ValueError if the
number of processes if negative or null.
2011-06-20 17:54:03 +02:00
Victor Stinner
2fae27b735 Issue #12285: multiprocessing.Pool() raises a ValueError if the number of
processes if negative or null.
2011-06-20 17:53:35 +02:00
Victor Stinner
3bcc0170bd (Merge 3.2) Issue #12310: finalize the old process after _run_after_forkers()
multiprocessing: Process._bootstrap() keeps a reference to the old process to
delay its finalization until after _run_after_forkers() as been executed. This
change should fix a crash on Mac OS X Tiger when a lock is released after a
fork.

Patch written by Charles-François Nataliv and Antoine Pitrou.
2011-06-17 12:36:26 +02:00
Victor Stinner
0f83b1511c Issue #12310: finalize the old process after _run_after_forkers()
multiprocessing: Process._bootstrap() keeps a reference to the old process to
delay its finalization until after _run_after_forkers() as been executed. This
change should fix a crash on Mac OS X Tiger when a lock is released after a
fork.

Patch written by Charles-François Nataliv and Antoine Pitrou.
2011-06-17 12:31:49 +02:00
Antoine Pitrou
dd69649660 Issue #9205: concurrent.futures.ProcessPoolExecutor now detects killed
children and raises BrokenProcessPool in such a situation.  Previously it
would reliably freeze/deadlock.
2011-06-08 17:21:55 +02:00
Antoine Pitrou
34b312e33d Whitespace normalization 2011-06-06 19:36:01 +02:00
Antoine Pitrou
176f07dadf Issue #12040: Expose a new attribute sentinel on instances of
:class:`multiprocessing.Process`.  Also, fix Process.join() to not use
polling anymore, when given a timeout.
2011-06-06 19:35:31 +02:00
Antoine Pitrou
5aa878c61a os.dup()-then-close() can be replaced with detach() 2011-05-09 21:00:28 +02:00
Antoine Pitrou
87cf220972 Issue #11743: Rewrite multiprocessing connection classes in pure Python. 2011-05-09 17:04:27 +02:00
brian.curtin
80e478362b Fix #5162. Allow child spawning from Windows services (via pywin32). 2011-04-11 17:59:01 -05:00
brian.curtin
727b498102 Fix #5162. Allow child spawning from Windows services (via pywin32). 2011-04-11 17:57:59 -05:00
brian.curtin
e2f299845d Fix #5162. Allow child spawning from Windows services (via pywin32). 2011-04-11 17:56:23 -05:00
Antoine Pitrou
753009a657 Merge from 3.2 (issue #11814, issue #8428) 2011-04-11 00:22:08 +02:00
Antoine Pitrou
bed9a5b6b3 Issue #11814: Fix likely typo in multiprocessing.Pool._terminate(). 2011-04-11 00:20:23 +02:00
Antoine Pitrou
81dee6b4d4 Issue #8428: Fix a race condition in multiprocessing.Pool when terminating
worker processes: new processes would be spawned while the pool is being
shut down.  Patch by Charles-François Natali.
2011-04-11 00:18:59 +02:00
Mark Dickinson
657bd0a25d Merge #11675 2011-03-26 10:22:56 +00:00
Mark Dickinson
633872e3fb Merge #11675 2011-03-26 10:21:20 +00:00
Mark Dickinson
89461ef8fc Issue #11675: Zero-out newly-created multiprocessing.[Raw]Array objects. 2011-03-26 10:19:03 +00:00
Ronald Oussoren
f0edd1b86d Merge with 3.1 2011-03-16 09:43:06 -04:00
Ronald Oussoren
0b8753d24b 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.
2011-03-16 09:41:32 -04:00
Ronald Oussoren
4d5fe33a70 Merge with 3.2 2011-03-16 09:44:26 -04:00
Antoine Pitrou
0bd4deba38 Issue #6064: Add a daemon keyword argument to the threading.Thread
and multiprocessing.Process constructors in order to override the
default behaviour of inheriting the daemonic property from the current
thread/process.
2011-02-25 22:07:43 +00:00
Marc-André Lemburg
8f36af7a4c Normalize the encoding names for Latin-1 and UTF-8 to
'latin-1' and 'utf-8'.

These are optimized in the Python Unicode implementation
to result in more direct processing, bypassing the codec
registry.

Also see issue11303.
2011-02-25 15:42:01 +00:00
Nick Coghlan
793ee1f8a8 Issue #10845: Improve compatibility between multiprocessing on Windows and package, zipfile and directory execution (Reviewed by Antoine Pitrou and approved by Georg Brandl) 2011-01-30 01:24:08 +00:00
Victor Stinner
2b69506c79 Issue #10816: multiprocessing.SocketClient() closes the socket on error
Use a context manager to close immediatly the socket on error.
2011-01-03 15:47:59 +00:00
R. David Murray
d382066d2c Merged revisions 87225 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r87225 | r.david.murray | 2010-12-13 20:38:16 -0500 (Mon, 13 Dec 2010) | 2 lines

  9162: fix license in multiprocessing files
........
2010-12-14 01:41:07 +00:00
R. David Murray
3fc969a4a2 9162: fix license in multiprocessing files 2010-12-14 01:38:16 +00:00
Ask Solem
2afcbf2249 Issue #9244: multiprocessing.pool: Worker crashes if result can't be encoded 2010-11-09 20:55:52 +00:00
Brian Curtin
9e2fadcbdd Merged revisions 86077 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r86077 | brian.curtin | 2010-11-01 00:10:44 -0500 (Mon, 01 Nov 2010) | 3 lines

  Fix some ResourceErrors.
  Use a context manager for os.popen and explicitly close a socket.
........
2010-11-01 05:12:34 +00:00
Brian Curtin
50be1ca55e Fix some ResourceErrors.
Use a context manager for os.popen and explicitly close a socket.
2010-11-01 05:10:44 +00:00
Georg Brandl
2fa4cc55e9 Support new Condition return value in the multiprocessing version. 2010-10-28 13:01:06 +00:00
Antoine Pitrou
1ce3eb5c5b Issue #8990: array.fromstring() and array.tostring() get renamed to
frombytes() and tobytes(), respectively, to avoid confusion.  Furthermore,
array.frombytes(), array.extend() as well as the array.array()
constructor now accept bytearray objects.  Patch by Thomas Jollans.
2010-09-01 20:29:34 +00:00
Brian Curtin
6aa8bc3442 Merged revisions 83722 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r83722 | brian.curtin | 2010-08-04 10:47:24 -0500 (Wed, 04 Aug 2010) | 7 lines

  Fix #9513 to remove relative imports from multiprocessing.

  The test suite currently skips test_multiprocessing on Windows
  because it fails on finding _multiprocessing in several
  win32-specific blocks. Removing the relative import lets this
  through and allows the test to run (and pass).
........
2010-08-04 15:54:19 +00:00
Brian Curtin
a6a3274aad Fix #9513 to remove relative imports from multiprocessing.
The test suite currently skips test_multiprocessing on Windows
because it fails on finding _multiprocessing in several
win32-specific blocks. Removing the relative import lets this
through and allows the test to run (and pass).
2010-08-04 15:47:24 +00:00
Antoine Pitrou
7c3e577395 Issue #7316: the acquire() method of lock objects in the :mod:threading
module now takes an optional timeout argument in seconds.  Timeout support
relies on the system threading library, so as to avoid a semi-busy wait
loop.
2010-04-14 15:44:10 +00:00