본문 바로가기

SW 개발 공부/python

Thread

개념)

파이썬 프로그램은 하나의 쓰레드에서 실행된다.

파이썬에서 프로그램을 병렬로 실행하기 위해서는 subthread를 생성해야하는데, 

파이썬에서 쓰레드를 생성하기 위해서는 threading 모듈(high level) 또는 thread 모듈(low level)을 사용할 수 있다.

 

파이썬은 전역 인터프리터 락킹 때문에 특정 시점에서 하나의 파이썬 코드만을 실행하게 되는데,

이때문에 파이썬은 실제 다중 cpu 환경에서 동시에 여러 파이썬 코드를 병렬로 실행 할 수 없으며 인터리빙 방식으로 코드를 분할하여 실행한다. 다중 cpu 에서 병렬 실행을 위해서는 다중 프로세스를 이용하는 multiprocessing 모듈을 사용한다.

 

 

* 전역 인터프리터 락킹

* 인터리빙 방식

 

사용법)

import threading

 

def add(a, b):

     return a+b

 

r = Threading.Thread(target=add, args=(1,2))

r.start()

 

* args 

Thread의 매개변수들.

 

데몬 쓰레드)

개념)

백그라운드에서 실행되는 쓰레드.

메인 쓰레드가 종료되면 자동으로 같이 종료된다.

 

 

참조:http://pythonstudy.xyz/python/article/24-%EC%93%B0%EB%A0%88%EB%93%9C-Thread

'SW 개발 공부 > python' 카테고리의 다른 글

패키지& 클래스  (0) 2022.06.03
모듈  (0) 2022.06.03
함수  (0) 2022.06.03
Set  (0) 2022.06.03