bpo-35491: Enhance multiprocessing.BaseProcess.__repr__() (GH-11138)
* Add the pid and parent pid to multiprocessing.BaseProcess.__repr__().
* Add negative sign (ex: "-SIGTERM") to exitcode (process killed
by a signal)
* Only call _popen.poll() once.
Example:
<ForkProcess(ForkPoolWorker-1, started daemon)>
becomes:
<ForkProcess name='ForkPoolWorker-1' pid=12449 parent=12448 started daemon>
Example:
<ForkProcess(ForkPoolWorker-1, stopped[SIGTERM] daemon)>
becomes:
<ForkProcess name='ForkPoolWorker-1' pid=12960 parent=12959 stopped exitcode=-SIGTERM daemon>
diff --git a/Doc/library/multiprocessing.rst b/Doc/library/multiprocessing.rst
index 578b548..1d0920a 100644
--- a/Doc/library/multiprocessing.rst
+++ b/Doc/library/multiprocessing.rst
@@ -626,14 +626,14 @@
>>> import multiprocessing, time, signal
>>> p = multiprocessing.Process(target=time.sleep, args=(1000,))
>>> print(p, p.is_alive())
- <Process(..., initial)> False
+ <Process ... initial> False
>>> p.start()
>>> print(p, p.is_alive())
- <Process(..., started)> True
+ <Process ... started> True
>>> p.terminate()
>>> time.sleep(0.1)
>>> print(p, p.is_alive())
- <Process(..., stopped[SIGTERM])> False
+ <Process ... stopped exitcode=-SIGTERM> False
>>> p.exitcode == -signal.SIGTERM
True