첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
728x90
반응형
728x170

■ Process 클래스를 사용하는 기본적인 방법을 보여준다.

 

▶ 예제 코드 (PY)

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
모든 프로세스가 종료되었습니다.
"""
728x90
반응형
그리드형(광고전용)
Posted by icodebroker

댓글을 달아 주세요