[issue40929] Multiprocessing. Instance of the custom class is missing in subprocesses

2020-06-09 Thread cyberlis


New submission from cyberlis :

When I use python3.7 everything works correctly and every subprocess has its 
own `Hello` instance. When I use python3.8 subprocesses do not have an instance 
of `Hello` class.
Is this behavior correct? 

My code to reproduce an issue

```python
from concurrent.futures.process import ProcessPoolExecutor
from concurrent.futures import as_completed
class Hello:
_instance = None
def __init__(self):
print("Creating instance of Hello ", self)
Hello._instance = self
def worker():
return Hello._instance
def main():
hello = Hello()
with ProcessPoolExecutor(max_workers=2) as pool:
futures = []
for _ in range(4):
futures.append(pool.submit(worker))

for future in as_completed(futures):
print(future.result())
if __name__ == "__main__":
main()
```

Output
```bash
pyenv local 3.7.6
python main.py

Creating instance of Hello  <__main__.Hello object at 0x102f48310>
<__main__.Hello object at 0x103587410>
<__main__.Hello object at 0x1035874d0>
<__main__.Hello object at 0x103587110>
<__main__.Hello object at 0x1035871d0>

pyenv local 3.8.1
python main.py

Creating instance of Hello  <__main__.Hello object at 0x102104d90>
None
None
None
None
```

--
files: main.py
messages: 371117
nosy: cyberlis
priority: normal
severity: normal
status: open
title: Multiprocessing. Instance of the custom class is missing in subprocesses
type: behavior
versions: Python 3.8
Added file: https://bugs.python.org/file49223/main.py

___
Python tracker 
<https://bugs.python.org/issue40929>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue40929] Multiprocessing. Instance of the custom class is missing in subprocesses

2020-06-09 Thread cyberlis


Change by cyberlis :


--
stage:  -> resolved
status: open -> closed

___
Python tracker 
<https://bugs.python.org/issue40929>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com