파이썬 멀티프로세싱에서 AttributeError: 'ForkAwareLocal' object has no attribute 'connection' 오류가 뜹니다
조회수 551회
import multiprocessing
from time import sleep
def a(num, list1, list2):
if(num==1):
count=0
for k in list1:
if k not in list2:
list2.append(k)
sleep(0.05)
count= count + 1
print('a '+ str(count))
if(num==2):
count=0
for j in list2:
if j+10000 not in list1:
list1.append(j+10000)
sleep(0.05)
count= count + 1
print('b '+ str(count))
if __name__ == '__main__':
manager = multiprocessing.Manager()
manager2 = multiprocessing.Manager()
list1 = manager.list()
for n in range(1,100):
list1.append(n)
list2 = manager2.list()
for n in range(101,1000):
list2.append(n)
for num in range(1,3):
p = multiprocessing.Process(target=a, args=(num, list1,list2))
p.start()
sleep(0.05)
한 함수인데 나눠야지만 출력이 되네요
이를 실행했을때 이런 오류가 발생했습니다
Process Process-3:
Traceback (most recent call last):
File "C:\Users\AAA\AppData\Local\Programs\Python\Python310\lib\multiprocessing\managers.py", line 810, in _callmethod
conn = self._tls.connection
AttributeError: 'ForkAwareLocal' object has no attribute 'connection'
댓글 입력