diff options
author | Victor Stinner <victor.stinner@haypocalc.com> | 2011-06-20 15:54:33 (GMT) |
---|---|---|
committer | Victor Stinner <victor.stinner@haypocalc.com> | 2011-06-20 15:54:33 (GMT) |
commit | f64a0cffca141fa0a8f1138b5f069ea0da446c9f (patch) | |
tree | 4d043737585f7df99d0246b18d2befaba4c456cc | |
parent | 3fdf9d43e5b7f788f19a4a6d7f0a6530c5b8c504 (diff) | |
download | cpython-f64a0cffca141fa0a8f1138b5f069ea0da446c9f.zip cpython-f64a0cffca141fa0a8f1138b5f069ea0da446c9f.tar.gz cpython-f64a0cffca141fa0a8f1138b5f069ea0da446c9f.tar.bz2 |
Issue #12285: multiprocessing.Pool() raises a ValueError if the number of
processes if negative or null.
-rw-r--r-- | Lib/multiprocessing/pool.py | 2 | ||||
-rw-r--r-- | Lib/test/test_multiprocessing.py | 3 |
2 files changed, 5 insertions, 0 deletions
diff --git a/Lib/multiprocessing/pool.py b/Lib/multiprocessing/pool.py index 862a60e..c66876a 100644 --- a/Lib/multiprocessing/pool.py +++ b/Lib/multiprocessing/pool.py @@ -125,6 +125,8 @@ class Pool(object): processes = cpu_count() except NotImplementedError: processes = 1 + if processes < 1: + raise ValueError("Number of processes must be at least 1") if initializer is not None and not hasattr(initializer, '__call__'): raise TypeError('initializer must be a callable') diff --git a/Lib/test/test_multiprocessing.py b/Lib/test/test_multiprocessing.py index fe19de0..de5e46a 100644 --- a/Lib/test/test_multiprocessing.py +++ b/Lib/test/test_multiprocessing.py @@ -1085,6 +1085,9 @@ class _TestPool(BaseTestCase): self.assertEqual(sorted(it), map(sqr, range(1000))) def test_make_pool(self): + self.assertRaises(ValueError, multiprocessing.Pool, -1) + self.assertRaises(ValueError, multiprocessing.Pool, 0) + p = multiprocessing.Pool(3) self.assertEqual(3, len(p._pool)) p.close() |