inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

multiprocessing(1) - Join, is_alive

메인 시작 영역에 관한 질문

342

asd5153

작성한 질문수 2

0

강사님 안녕하세요, 

#메인 시작 영역에 관해 질문드립니다. 

main( ) 함수 실행시 

if __name__ == "__main__" 영역 밖에서 실행했을 때 Runtime Error가 발생하던데, 왜 그런지 알고 싶습니다. 

(Threading에서는 if __name__=="main" 영역 밖에서 실행했을 때 정상적으로 작동하는 것 같은데 말입니다)

아래 전체 코드 드립니다. 감사합니다. 

 

from multiprocessing import Process

import time

import logging

 

def process_func(name):

    print(f"subprocess {name} stated")

    time.sleep(3)

    print(f"subprocess {name} stated")

 

def main():

    format = "%(asctime)s: %(message)s"

    logging.basicConfig(format=format, level=logging.INFO, datefmt="%H:%M:%S")

 

    # 함수 인자 확인

    p = Process(target=process_func, args=('First',))

 

    logging.info('Main_process : before Creating')

 

    p.start()

 

    logging.info('Main_process : Sub Process stated')

    logging.info(f'Main_prcess : Status: {p.is_alive()}')

 

    p.join()

 

    logging.info(f'Main_prcess : Status: {p.is_alive()}')

    logging.info('Main_process : Sub Process finished')

 

# if __name__=="__main__":

main()

 

 

python 동시성

답변 1

1

좋은사람

네 좋은 질문이예요

시작 지점인 __main__ 에서 실제 부모 프로세스에 의하여 잡을 할당하고 실행됩니다.

당연히 main 영역 외부라면 진입점이 없으므로 실행되지 않습니다.

0

asd5153

답변 감사합니다!

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

246

1

작업영역 질문

0

312

1

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

0

292

1

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

0

289

1

py_ad_2_5_2 Sharing State의 Argument 부분

0

303

1

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

0

344

1

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

0

355

1

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

0

259

1

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

0

442

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