■ Process 클래스를 사용하는 기본적인 방법을 보여준다.
▶ 예제 코드 (PY)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
import multiprocessing import time def run(name, lock, countValue): print(name, "프로세스가 생성되었습니다.") tryCount = 0 while 1: lock.acquire() if countValue.value > 0: countValue.value -= 1 lock.release() tryCount += 1 time.sleep(0.1) else: lock.release() print(name, "tryCount", tryCount) break if __name__ == "__main__": lock = multiprocessing.Lock() countValue = multiprocessing.Value("i", 10) processList = [] for processName in ["프로세스1", "프로세스2", "프로세스3"]: process = multiprocessing.Process(target = run, args = (processName, lock, countValue)) processList.append(process) process.start() for process in processList: process.join() print("모든 프로세스가 종료되었습니다.") """ 프로세스1 프로세스가 생성되었습니다. 프로세스2 프로세스가 생성되었습니다. 프로세스3 프로세스가 생성되었습니다. 프로세스2 tryCount 3 프로세스1 tryCount 3 프로세스3 tryCount 4 모든 프로세스가 종료되었습니다. """ |