diff options
author | Antoine Pitrou <solipsis@pitrou.net> | 2016-12-10 16:16:17 (GMT) |
---|---|---|
committer | Antoine Pitrou <solipsis@pitrou.net> | 2016-12-10 16:16:17 (GMT) |
commit | ebb39bcc048b33d529a64f517ccee1c172ff8b07 (patch) | |
tree | e9c5c42ccd7271e9d67506797417b06066d90f2a /Lib/test/mp_preload.py | |
parent | 13f1c331a5dd5b4ff3b1e4c9e47d6d3ae75e0f8f (diff) | |
parent | cd2a201e5bb33c9b44401a91e10189be87885efe (diff) | |
download | cpython-ebb39bcc048b33d529a64f517ccee1c172ff8b07.zip cpython-ebb39bcc048b33d529a64f517ccee1c172ff8b07.tar.gz cpython-ebb39bcc048b33d529a64f517ccee1c172ff8b07.tar.bz2 |
Issue #28779: multiprocessing.set_forkserver_preload() would crash the forkserver process if a preloaded module instantiated some multiprocessing objects such as locks.
Diffstat (limited to 'Lib/test/mp_preload.py')
-rw-r--r-- | Lib/test/mp_preload.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/Lib/test/mp_preload.py b/Lib/test/mp_preload.py new file mode 100644 index 0000000..5314e8f --- /dev/null +++ b/Lib/test/mp_preload.py @@ -0,0 +1,18 @@ +import multiprocessing + +multiprocessing.Lock() + + +def f(): + print("ok") + + +if __name__ == "__main__": + ctx = multiprocessing.get_context("forkserver") + modname = "test.mp_preload" + # Make sure it's importable + __import__(modname) + ctx.set_forkserver_preload([modname]) + proc = ctx.Process(target=f) + proc.start() + proc.join() |