반응형
파이썬은 GIL 때문에 멀티스레드로 프로그램을 구성해도 실제로는 한번에 하나의 스레드가
time-sharing하는 형태로 실행된다. -> multiprocessing 모듈을 사용하여 해결가능
[ex code]
from multiprocessing import Process
import time
class test:
def a(self):
for i in range(0,5):
print 'a'
time.sleep(1)
def b(self):
for i in range(0,5):
print 'b'
time.sleep(1)
if __name__ == '__main__':
go = test()
p1 = Process(target=go.a)
p2 = Process(target=go.b)
p1.start()
p2.start()
'Coding > Python' 카테고리의 다른 글
파이썬 한글 인코딩 문제 해결 (0) | 2016.12.08 |
---|---|
multiprocessing 간 전역변수 공유 (0) | 2016.12.07 |
ascii' codec can't decode byte 0xed in position 0: ordinal not in range(128) 에러 (0) | 2016.12.05 |
Python Generate unique random numbers within a range (0) | 2016.12.03 |
네이버 노래 가사 파싱하기 (1) | 2016.12.01 |