멀티프로세싱 관련 질문
선생님 안녕하세요
좋은 강의 감사합니다.
multiprocessing(2) - Naming, Parallel processing
12분 경에서 질문이 있습니다.
for i in range(1, 10): # 1 ~ 100 적절히 조절
# 생성; name은 str을 받기 때문에 형변환
t = Process(name=str(i), target=square, args=(i,))
# 배열에 담기 - 한번에 풀면서 join 하기 위해서
processes.append(t)
# 시작
t.start()
이런식으로 코드가 실행될때, 왜 서브 프로세스가 순서대로 실행이 되지 않는지 잘 이해가 가지 않습니다.
분명히 for loop에서 i가 순서대로 증가하면서 t.start()를 하거든요. 예를 들어, i =1 일때 t가 정의되고 t.start()가 된다음에 다시 i=2 가 되면서 반복되는 식으로요.
그럼 "논리상" 1번째 서브 프로세스부터 순차적으로 실행되어야 하는 것 아닌가요?
Answer 1
2
네 안녕하세요. nathan님
좋은 질문입니다.
서브 프로세서의 실행의 위임은 "운영체제"에 있습니다. 운영체제가 스케쥴링에 맞춰서
실행 후 결과 값을 반환하는대요.
뒷 부분에서 각 프로세스의 현재 상태 체크와 실행 완료 순서가 먼저 처리 된 것을 기반으로
다양한 컨틑롤을 할 수 있습니다.
결국은 운영체제가 실행하기 때문입니다.
또한, 아래 링크도 한 번 읽어보시면 도움이 되실거예요.
Pros and Cons 관련하여 질문드립니다
0
58
1
daemon=True가 안 먹히네요
0
82
2
threadpoolexecutor.submit 실행 시 순차 실행
0
211
2
queue 를 사용하는 이유?
1
224
1
python gil 삭제
0
369
1
4분:59초 질문 그룹쓰레드 (5). 대기중인 작업 -> Queue -> 완료 상태조사 -> 결과 또는 예외 -> 단일화(캡슐화) 에 관해서
0
165
1
데몬스레드 설명
0
235
1
작업영역 질문
0
302
1
cmd에서 code작성시 기존에 깔아둔 vscode에서 이상한 화면이 뜨네요
0
284
1
ThreadPoolExecutor에서 작업중인 쓰레드가 있을때 대기할수 있는 방법이 있는지요?
0
272
1
py_ad_2_5_2 Sharing State의 Argument 부분
0
298
1
Thread(4) 16:10 스레드 질문
0
334
1
파이썬 병렬처리 관련 질문이 있습니다.
0
345
1
10:10쯤에 질문있습니다.
0
250
1
multiprocessing(5) - Queue 공유 질문 in multiprocess
0
429
1
seleniumwire multiprocessing 에러
0
723
1
logging과 print 차이 질문입니다..!
0
656
1
확장프로그램 질문입니다
0
292
1
KeyboardInterrupt 시 p.join에서 exception 발생
0
412
1
경쟁상태,교착상태, 메모리영역
0
257
1
ProcessPoolExecutor 사용 시 pid 증가
0
351
1
multiprocess 환경에서 특정 Process에 문제가 있거나 죽었을때 처리 방법
0
750
1
ThreadPoolExecutor 에서 max_workers 질문입니다.
2
1520
1
1-3강의 내용중 질문있습니다.
0
237
1

