파이썬 - 쓰레드 lock

여러 쓰레드에서 접근할 때 막는 방법, 찾아둔 거 저장 합니다.

아래 예제는 flask 에서 gunicorn 으로 proxy 하면 work thread 가 동시에 뜰 수도 있는데, 공유 자원을 lock 해서 한놈만 접근하도록 하는 코드 인듯. 

 

https://stackoverflow.com/questions/18213619/sharing-a-lock-between-gunicorn-workers

 

Sharing a lock between gunicorn workers

Is there a good way to share a multiprocessing Lock between gunicorn workers? I am trying to write a json API with Flask. Some of the API calls will interact a python class that manages a running

stackoverflow.com

# dummy.py
from multiprocessing import Lock
import time

lock = Lock()

def start():
    lock.acquire()

    # TODO do work
    for i in range(0,10):
        print "did work %s" % i
        time.sleep(1)

    lock.release()

 

일단 공부하기 전에 저장해두고, 나중에 정리하자.

 

 

눈이 몇개야 ㅋㅋ 혼동의 시작

Pexels에서 Og Mpango님의 사진: https://www.pexels.com/ko-kr/photo/3267211/