inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

고수가 되는 파이썬 : 동시성과 병렬성 문법 배우기 Feat. 멀티스레딩 vs 멀티프로세싱 (Inflearn Original)

multiprocessing(2) - Naming, Parallel processing

multiprocessing(2) - Naming, Parallel processing 에서 10분 33초 부분 질문입니다

230

문환룡

작성한 질문수 20

0

f __name__ == "__main__":
    # 부모 프로세스 아이디
    parent_process_id = os.getpid()
    # 출력
    print(f"Parent process ID {parent_process_id}")

    # 프로세스 리스트  선언
    processes = list()

    # 프로세스 생성 및 실행 - 가장 기본적인 구조
    for i in range(1, 10): # 1 ~ 100 적절히 조절
        # 생성
        t = Process(name=str(i), target=square, args=(i,))

        # 배열에 담기 - 한번에 join을 하려고 리스트에 담음
        processes.append(t)

        # 시작
        t.start()

    # Join - 한번에 join!!
    for process in processes:
        process.join()

    # 종료
    print("Main-Processing Done!")

해당 부분에서 t.start을 할 때 i=1부터 9까지의 프로세스들이 순차적으로 동작을 하는 것 아닌가요?

운영체제에서 할당을 해서 순서가 랜덤으로 된다고 이해를 했는데 혹시 pc에서 프로세스들을 할당받는 속도가 빨라서 거의 동시에 할당받는 것처럼 생각해, 랜덤의 순서로 프로세스 스케줄링 해주는 것인가요?

 

python 동시성

답변 1

0

좋은사람

네 안녕하세요.

열심히 하시네요!

100번 실행해보면 거의 순서가 유지될 거예요!

다만, 무조건 순서를 보장받는다고 볼 수 는 없습니다. (랜덤)

무거운 작업(랜더링, 영화 상영, 인터넷 실행 여부, 게임실행) 등 다양한 프로그램 실행 중

코어가 모두 작업을 하고 있을 경우에도 테스트 해보셔야 되여!

Pros and Cons 관련하여 질문드립니다

0

74

1

daemon=True가 안 먹히네요

0

100

2

threadpoolexecutor.submit 실행 시 순차 실행

0

232

2

queue 를 사용하는 이유?

1

246

1

멀티프로세싱 관련 질문

0

193

1

python gil 삭제

0

373

1

4분:59초 질문 그룹쓰레드 (5). 대기중인 작업 -> Queue -> 완료 상태조사 -> 결과 또는 예외 -> 단일화(캡슐화) 에 관해서

0

175

1

데몬스레드 설명

0

245

1

작업영역 질문

0

312

1

cmd에서 code작성시 기존에 깔아둔 vscode에서 이상한 화면이 뜨네요

0

292

1

ThreadPoolExecutor에서 작업중인 쓰레드가 있을때 대기할수 있는 방법이 있는지요?

0

289

1

py_ad_2_5_2 Sharing State의 Argument 부분

0

302

1

Thread(4) 16:10 스레드 질문

0

344

1

파이썬 병렬처리 관련 질문이 있습니다.

0

355

1

10:10쯤에 질문있습니다.

0

259

1

multiprocessing(5) - Queue 공유 질문 in multiprocess

0

440

1

seleniumwire multiprocessing 에러

0

730

1

logging과 print 차이 질문입니다..!

0

674

1

확장프로그램 질문입니다

0

301

1

KeyboardInterrupt 시 p.join에서 exception 발생

0

421

1

경쟁상태,교착상태, 메모리영역

0

259

1

ProcessPoolExecutor 사용 시 pid 증가

0

354

1

multiprocess 환경에서 특정 Process에 문제가 있거나 죽었을때 처리 방법

0

757

1

ThreadPoolExecutor 에서 max_workers 질문입니다.

2

1537

1