Charles-François Natali
84e4316489
Issue #17025 : multiprocessing: Reduce Queue and SimpleQueue contention.
2013-03-25 18:20:40 +01:00
Charles-François Natali
a655075d16
Issue #17025 : Add dumps() and loads() to ForkingPickler.
2013-03-24 15:21:49 +01:00
Richard Oudkerk
0320025f17
Merge
2013-02-26 13:11:11 +00:00
Richard Oudkerk
5b8a3242c4
Merge
2013-02-26 13:00:15 +00:00
Richard Oudkerk
7aaa1ef858
Issue #17018 : Make Process.join() retry if os.waitpid() fails with EINTR.
2013-02-26 12:39:57 +00:00
Giampaolo Rodola'
67da89446a
fix for previous commit related to issue 10527 which didn't have the intended effect as per http://bugs.python.org/issue10527#msg179895
2013-01-14 02:24:25 +01:00
Giampaolo Rodola'
0c8ad61c95
fix for previous commit related to issue 10527 which didn't have the intended effect as per http://bugs.python.org/issue10527#msg179895
2013-01-14 02:24:05 +01:00
Richard Oudkerk
0ee84e04da
Issue #16955 : Fix the poll() method for multiprocessing's socket
...
connections on Windows.
2013-01-13 22:52:13 +00:00
Richard Oudkerk
ed9e06cb21
Issue #16955 : Fix the poll() method for multiprocessing's socket
...
connections on Windows.
2013-01-13 22:46:48 +00:00
Richard Oudkerk
ef45380b6b
Fix overlooked licence text.
2013-01-01 14:25:59 +00:00
Giampaolo Rodola'
b4f39e85f2
Fix issue 10527: make multiprocessing use poll() instead of select() if available.
2012-12-31 17:38:46 +01:00
Giampaolo Rodola'
5051ca887c
Fix issue 10527: make multiprocessing use poll() instead of select() if available.
2012-12-31 17:38:17 +01:00
Giampaolo Rodola'
5e844c8052
Fix issue 10527: make multiprocessing use poll() instead of select() if available.
2012-12-31 17:23:09 +01:00
Andrew Svetlov
f7a17b48d7
Replace IOError with OSError ( #16715 )
2012-12-25 16:47:37 +02:00
Andrew Svetlov
2606a6f197
Issue #16719 : Get rid of WindowsError. Use OSError instead
...
Patch by Serhiy Storchaka.
2012-12-19 14:33:35 +02:00
Andrew Svetlov
ad28c7f9da
Issue #16706 : get rid of os.error
2012-12-18 22:02:39 +02:00
Andrew Svetlov
a191959849
Issue #16714 : use 'raise' exceptions, don't 'throw'.
...
Patch by Serhiy Storchaka.
2012-12-18 21:27:16 +02:00
Andrew Svetlov
5b89840d9c
Issue #16714 : use 'raise' exceptions, don't 'throw'.
...
Patch by Serhiy Storchaka.
2012-12-18 21:26:36 +02:00
Andrew Svetlov
737fb89dd1
Issue #16714 : use 'raise' exceptions, don't 'throw'.
...
Patch by Serhiy Storchaka.
2012-12-18 21:14:22 +02:00
Richard Oudkerk
8f7c4b8a85
Issue #16481 : Merge
2012-11-15 18:22:23 +00:00
Richard Oudkerk
021f4c2ecc
Issue #16481 : multiprocessing no longer leaks process handles on Windows.
2012-11-15 18:16:35 +00:00
Andrew Svetlov
6b973747f3
Issue #16284 : Prevent keeping unnecessary references to worker functions in concurrent.futures ThreadPoolExecutor.
2012-11-03 15:36:01 +02:00
Hynek Schlawack
969684f2ad
Merge 3.3
2012-10-27 12:56:30 +02:00
Hynek Schlawack
254af2644a
#16307 : Fix multiprocessing.Pool.map_async not calling its callbacks
...
Patch by Janne Karila.
2012-10-27 12:53:02 +02:00
Richard Oudkerk
5046e9741c
Make __mp_main__ an alias for __main__ in all processes to simplify
...
pickling of classes defined in main module.
2012-10-08 13:07:00 +01:00
Benjamin Peterson
3095f4724e
raise a ValueError instead of an AssertionError when pool is an invalid state
2012-09-25 12:45:42 -04:00
Richard Oudkerk
e8cd6bb127
Issue #15881 : Clarify comment in exit function
2012-09-13 17:27:15 +01:00
Alexander Belopolsky
5bedef3e64
Issue #15881 : Fixed 3.2 backport.
2012-09-09 13:31:08 -04:00
Alexander Belopolsky
7f704c11db
Fixed whitespace
2012-09-09 13:25:06 -04:00
Alexander Belopolsky
36351564a2
Fixed whitespace
2012-09-09 13:22:45 -04:00
Alexander Belopolsky
f36c49d124
Issue #15881 : Fixed atexit hook in multiprocessing.
2012-09-09 13:20:58 -04:00
Alexander Belopolsky
59fb38b582
Issue #15881 : Fixed atexit hook in multiprocessing.
2012-09-09 13:16:15 -04:00
Richard Oudkerk
04ec8ce1bb
Issue #14669 : Fix pickling of connections and sockets on MacOSX
...
by sending/receiving an acknowledgment after file descriptor transfer.
TestPicklingConnection has been reenabled for MacOSX.
2012-08-16 16:48:55 +01:00
Richard Oudkerk
3165a75e45
Merge 3.2
2012-08-14 12:51:14 +01:00
Richard Oudkerk
e88a2445bc
Issue #15646 : Prevent equivalent of a fork bomb when using multiprocessing
...
on Windows without the "if __name__ == '__main__'" idiom.
2012-08-14 11:41:32 +01:00
Richard Oudkerk
b303580c7c
Issue #15525 : Increase timeout when TerminateProcess() fails
2012-08-01 17:44:18 +01:00
Richard Oudkerk
b15e622bb8
Issue #6056 : Make multiprocessing use setblocking(True) on the sockets it uses.
...
Original patch by J Derek Wilson.
2012-07-27 14:19:00 +01:00
Richard Oudkerk
4887b1c0e7
Issue #6056 : Make multiprocessing use setblocking(True) on the sockets it uses.
...
Original patch by J Derek Wilson.
2012-07-27 14:06:11 +01:00
Richard Oudkerk
8838061119
Issue #10527 : Remove dead code
2013-01-15 13:19:24 +00:00
Giampaolo Rodola'
549d465fe2
issue 10527: fix missing import
2013-01-03 02:54:27 +01:00
Richard Oudkerk
ac38571f00
Issue #15064 : Make BaseManager.__enter__() start server if necessary.
2012-06-18 21:29:30 +01:00
Richard Oudkerk
d69cfe88ea
Issue #15064 : Implement context manager protocol for multiprocessing types
2012-06-18 17:47:52 +01:00
Richard Oudkerk
0f884273b0
Issue #15101 : Make pool finalizer avoid joining current thread.
2012-06-18 16:02:49 +01:00
Richard Oudkerk
f29ec4b0c8
Issue #15101 : Make pool finalizer avoid joining current thread.
2012-06-18 15:54:57 +01:00
Richard Oudkerk
3049f1243e
Increase timeout used when waiting for manager to shutdown cleanly
...
before resorting to terminate()
2012-06-15 20:08:29 +01:00
Richard Oudkerk
3730a17a58
Issue #14059 : Implement multiprocessing.Barrier
2012-06-15 18:26:07 +01:00
Richard Oudkerk
73d9a292ae
Issue #13841 : Make child processes exit using sys.exit() on Windows
2012-06-14 15:30:10 +01:00
Richard Oudkerk
f0604fddc3
Issue #3518 : Remove references to non-existent BaseManager.from_address()
...
method
2012-06-11 17:56:08 +01:00
Richard Oudkerk
58ba47f97b
Merge fixes for #13854 and #12157 .
2012-06-07 20:38:11 +01:00
Richard Oudkerk
29471de459
Issue #13854 : Properly handle non-integer, non-string arg to SystemExit
...
Previously multiprocessing only expected int or str. It also wrongly
used an exit code of 1 when the argument was a string instead of zero.
2012-06-06 19:04:57 +01:00
Richard Oudkerk
e41682b994
Issue #12157 : pool.map() does not handle empty iterable correctly
...
Initial patch by mouad
2012-06-06 19:04:57 +01:00
Richard Oudkerk
bd7b5dd816
Prevent handle leak if CreateProcess() fails in multiprocessing
2012-06-04 18:59:10 +01:00
Richard Oudkerk
86eb7e97ae
Fix potential NameError in multiprocessing.Condition.wait()
2012-06-04 18:59:07 +01:00
Richard Oudkerk
ad06444d6c
Make Finalize reserve a reference to os.getpid in case called at shutdown
2012-06-04 18:58:59 +01:00
Richard Oudkerk
87ea780e8e
Use Python 3.x-style keyword only arg in Array()
...
Previously a Python 2.x compatible hack was used for
multiprocessing.sharedctypes.Array(). Also the documented
signature was wrong.
2012-05-29 12:01:47 +01:00
Richard Oudkerk
1074a9294b
Remove __getslice__, __setslice__, __delslice__ methods from proxies
...
Proxy classes in multiprocessing do not need these methods in Python 3.x.
2012-05-29 12:01:45 +01:00
Richard Oudkerk
26cdf1fe5b
Make multiprocessing's shared memory use memoryview instead of raw pointer
2012-05-26 22:09:59 +01:00
Richard Oudkerk
739ae5692e
Issue #14548 : Make multiprocessing finalizers check pid before running
...
This protects from possibilty of gc running just after fork.
2012-05-25 13:54:53 +01:00
Richard Oudkerk
692130a231
Issue #12091 : simplify ApplyResult and MapResult with threading.Event
...
Patch by Charles-François Natali
2012-05-25 13:26:53 +01:00
Richard Oudkerk
be39cfc9dc
Merge
2012-05-25 13:04:20 +01:00
Richard Oudkerk
54454e7dc2
Issue #14881 : Allow normal non-main thread to spawn a dummy process
...
Fix suggested by Itay Brandes
2012-05-25 12:57:58 +01:00
Antoine Pitrou
fa67aa0d72
Fix whitespace
2012-05-18 18:33:32 +02:00
Antoine Pitrou
ebdcd859e5
Move private function _args_from_interpreter_flags() to subprocess.py, so
...
that it can be imported when threads are disabled.
(followup to issue #12098 )
2012-05-18 18:33:07 +02:00
Richard Oudkerk
77c84f2def
#12098 : Make multiprocessing's child processes inherit sys.flags on Windows
...
Initial patch by Sergey Mezentsev.
2012-05-18 14:28:02 +01:00
Richard Oudkerk
59d5404bc7
Issue #14753 : Make multiprocessing treat negative timeouts as it did in 3.2
...
In Python 3.2 and earlier, Process.join() and Connection.poll()
treated negative timeouts as zero timeouts. Earlier versions from
the 3.3 line of development treat them as infinite timeouts.
The patch reverts to the old behaviour.
2012-05-10 16:11:12 +01:00
Richard Oudkerk
41eb85b194
Make AcquirerProxy.acquire() support timeout argument
2012-05-06 16:45:02 +01:00
Richard Oudkerk
7ef909cdd7
Fix for issue 14725 for 3.2 branch
2012-05-05 20:41:23 +01:00
Richard Oudkerk
fdb8dcf675
Fix for Issue 14725 for 3.3 branch.
2012-05-05 19:45:37 +01:00
Richard Oudkerk
a6becaa9cb
Fix dangling warning for test_multiprocessing
2012-05-03 18:29:02 +01:00
Richard Oudkerk
3e268aac3b
Mark multiprocessing files with "Licensed to PSF under a Contributor Agreement"
...
instead of BSD licence.
2012-04-30 12:13:55 +01:00
Antoine Pitrou
92ff4e196b
Issue #14666 : stop multiprocessing's resource-sharing thread after the tests are done.
...
Also, block delivery of signals to that thread. Patch by Richard Oudkerk.
This will hopefully fix sporadic freezes on the FreeBSD 9.0 buildbot.
2012-04-27 23:51:03 +02:00
Antoine Pitrou
5438ed1572
Issue #4892 : multiprocessing Connections can now be transferred over multiprocessing Connections.
...
Patch by Richard Oudkerk (sbt).
2012-04-24 22:56:57 +02:00
Antoine Pitrou
23bba4ca39
Issue #11750 : The Windows API functions scattered in the _subprocess and
...
_multiprocessing.win32 modules now live in a single module "_winapi".
Patch by sbt.
2012-04-18 20:51:15 +02:00
Charles-François Natali
c8ce715a82
Issue #14087 : multiprocessing: add Condition.wait_for(). Patch by sbt.
2012-04-17 18:45:57 +02:00
Antoine Pitrou
df97cbe7a1
Issue #14522 : Avoid duplicating socket handles in multiprocessing.connection.
...
Patch by sbt.
2012-04-07 22:38:52 +02:00
Antoine Pitrou
5c73e8eaf4
Issue #14482 : Raise a ValueError, not a NameError, when trying to create
...
a multiprocessing Client or Listener with an AF_UNIX type address under
Windows. Patch by Popa Claudiu.
2012-04-03 20:13:45 +02:00
Antoine Pitrou
6d20cba8d6
Issue #14482 : Raise a ValueError, not a NameError, when trying to create
...
a multiprocessing Client or Listener with an AF_UNIX type address under
Windows. Patch by Popa Claudiu.
2012-04-03 20:12:23 +02:00
Antoine Pitrou
93bba8fb8a
Issue #14151 : Raise a ValueError, not a NameError, when trying to create
...
a multiprocessing Client or Listener with an AF_PIPE type address under
non-Windows platforms. Patch by Popa Claudiu.
2012-04-01 17:25:49 +02:00
Antoine Pitrou
709176f10c
Issue #14151 : Raise a ValueError, not a NameError, when trying to create
...
a multiprocessing Client or Listener with an AF_PIPE type address under
non-Windows platforms. Patch by Popa Claudiu.
2012-04-01 17:19:09 +02:00
Antoine Pitrou
846fd302a0
Issue #14335 : multiprocessing's custom Pickler subclass now inherits from the C-accelerated implementation.
...
Patch by sbt.
2012-03-17 00:23:04 +01:00
Antoine Pitrou
bdb1cf1ca5
Issue #12328 : Fix multiprocessing's use of overlapped I/O on Windows.
...
Also, add a multiprocessing.connection.wait(rlist, timeout=None) function
for polling multiple objects at once. Patch by sbt.
Complete changelist from sbt's patch:
* Adds a wait(rlist, timeout=None) function for polling multiple
objects at once. On Unix this is just a wrapper for
select(rlist, [], [], timeout=None).
* Removes use of the SentinelReady exception and the sentinels argument
to certain methods. concurrent.futures.process has been changed to
use wait() instead of SentinelReady.
* Fixes bugs concerning PipeConnection.poll() and messages of zero
length.
* Fixes PipeListener.accept() to call ConnectNamedPipe() with
overlapped=True.
* Fixes Queue.empty() and SimpleQueue.empty() so that they are
threadsafe on Windows.
* Now PipeConnection.poll() and wait() will not modify the pipe except
possibly by consuming a zero length message. (Previously poll()
could consume a partial message.)
* All of multiprocesing's pipe related blocking functions/methods are
now interruptible by SIGINT on Windows.
2012-03-05 19:28:37 +01:00
Sandro Tosi
cd77815e4c
Issue #11836 : document and expose multiprocessing.SimpleQueue
2012-02-15 23:27:00 +01:00
Charles-François Natali
ed4a8fc095
Issue #8184 : multiprocessing: On Windows, don't set SO_REUSEADDR on Connection
...
sockets, and set FILE_FLAG_FIRST_PIPE_INSTANCE on named pipes, to make sure two
listeners can't bind to the same socket/pipe (or any existing socket/pipe).
2012-02-08 21:15:58 +01:00
Charles-François Natali
edc67feaa4
Issue #8184 : Fix a potential file descriptor leak when a
...
multiprocessing.Connection socket can't be bound.
2012-02-04 15:12:08 +01:00
Charles-François Natali
992ca5278e
Issue #8184 : Fix a potential file descriptor leak when a
...
multiprocessing.Connection socket can't be bound.
2012-02-04 14:55:53 +01:00
Antoine Pitrou
2d843d2520
Issue #13812 : When a multiprocessing Process child raises an exception, flush stderr after printing the exception traceback.
2012-01-27 10:53:35 +01:00
Antoine Pitrou
84a0fbf6b0
Issue #13812 : When a multiprocessing Process child raises an exception, flush stderr after printing the exception traceback.
2012-01-27 10:52:37 +01:00
Charles-François Natali
fe8039b3e5
Issue #13565 : Increase multiprocessing's server socket backlog, to avoid
...
dropped connections in case of simultaneous connection requests.
2011-12-23 19:06:48 +01:00
Charles-François Natali
78c1b42fde
Issue #13565 : Increase multiprocessing's server socket backlog, to avoid
...
dropped connections in case of simultaneous connection requests.
2011-12-23 19:07:58 +01:00
Antoine Pitrou
de911b2915
Issue #12708 : Add starmap() and starmap_async() methods (similar to itertools.starmap()) to multiprocessing.Pool.
...
Patch by Hynek Schlawack.
2011-12-21 11:03:24 +01:00
Charles-François Natali
e6eabd4345
Issue #13215 : multiprocessing.Connection: don't hammer the remote end with
...
retries in case of ECONNREFUSED.
2011-11-19 09:59:43 +01:00
Florent Xicluna
04842a84c3
Remove unused or redundant imports in concurrent.futures and multiprocessing.
2011-11-11 20:05:50 +01:00
Antoine Pitrou
021572431b
Issue #13373 : multiprocessing.Queue.get() could sometimes block indefinitely
...
when called with a timeout. Patch by Arnaud Ysmal.
2011-11-10 00:38:25 +01:00
Antoine Pitrou
a365113679
Issue #13373 : multiprocessing.Queue.get() could sometimes block indefinitely
...
when called with a timeout. Patch by Arnaud Ysmal.
2011-11-10 00:37:09 +01:00
Florent Xicluna
5d1155c08e
Closes #13258 : Use callable() built-in in the standard library.
2011-10-28 14:45:05 +02:00
Charles-François Natali
f8859e1808
Issue #10332 : multiprocessing: fix a race condition when a Pool is closed
...
before all tasks have completed.
2011-10-24 18:45:29 +02:00
Ezio Melotti
e130a52d8a
Remove duplication.
2011-10-19 10:58:56 +03:00
Florent Xicluna
aabbda5354
Merge 3.2
2011-10-28 14:52:29 +02:00
Charles-François Natali
feeb3a366c
Issue #10332 : multiprocessing: fix a race condition when a Pool is closed
...
before all tasks have completed.
2011-10-24 18:47:43 +02:00
Antoine Pitrou
24d659daaf
Use InterruptedError instead of checking for EINTR
2011-10-23 23:49:42 +02:00