본문 바로가기

멀티프로세싱2

Python os.fork, os.wait 멀티프로세싱 3 학부에서 Linux 시스템 프로그래밍을 배울 때 멀티프로세싱을 다루었었다. 이때 fork, wait의 system call을 사용하였었다. 그런데 이 system call들을 python에서도 사용할 수 있다. 이 systam call들은 os 모듈을 사용하여 접근할 수 있다. 이를 이용하면 파이썬에서도 c에서와 유사하게 multi-processing을 할 수 있다. 단, Ms Windows처럼 이 system call들을 지원하지 않는 운영체제에서는 사용할 수 없다. fork c에서 fork는 fork를 사용한 시점에서 새로운 프로세스를 생성하는 system call이다. fork 이후에는 기존 프로세스와 새롭게 생성된 프로세스 모두에서 이후 코드들이 실행되게 한다. python에서의 fork 도 이와.. 2021. 11. 19.
Python multiprocessing.Process 멀티프로세싱 1 파이썬에서 멀티프로세싱을 이용하여 여러 작업을 동시에 처리할 수 있다. multiprocessing의 Process를 사용하여 이를 간단히 구현할 수 있다. Process 사용 아래 코드는 Process를 사용하는 가장 간단한 방법이다. from multiprocessing import Process def func(string): print(string) if __name__ == "__main__": proc = Process(target=func,args=('process',)) proc.start() process Process의 서브클래스를 만들어 사용할 수도 있다. 이때, 반드시 run() 메서드를 오버 라이딩해주자. from multiprocessing import Process class .. 2021. 6. 3.