파이썬 멀티스레딩 기초 및 실습 가이드
threading 모듈의 핵심 개념
파이썬의 threading 모듈은 동시성 처리를 위한 기본 도구로, 프로세스와 유사한 인터페이스를 제공합니다. 주로 단일 프로세스 내에서 여러 스레드를 생성하여 작업을 병렬로 수행할 수 있도록 합니다.
스레드 생성 방법 두 가지
스레드는 함수 기반과 클래스 기반으로 생성할 수 있습니다.
함수 기반: Thread(target=function, args=()) 형 ...
7월 5일 23:23에 게시됨
JUC 프로그래밍: Lock과 Condition
JUC란?
JUC는 Java에서 제공하는 동시성 도구 패키지로, java.util.concurrent라는 클래스 라이브러리를 의미합니다. 이 패키지는 고성능 멀티스레드 애플리케이션을 개발하기 위해 다양한 클래스와 인터페이스를 제공합니다. 주요 기능은 CPU 자원을 효율적으로 활용하는 것입니다.
비고:
쓰레드는 start() 메서드로 시작하지 않고, 사실상 내부의 native 메서드인 sta ...
6월 15일 02:46에 게시됨
Python 다중 프로세스 프로그래밍 기초와 실전 활용
다중 프로세스의 필요성과 multiprocessing 모듈
Python의 GIL(Global Interpreter Lock)로 인해 멀티스레딩은 CPU 집약적 작업에서 멀티코어를 효과적으로 활용할 수 없습니다. 이를 극복하기 위해 multiprocessing 모듈을 사용하면 각 프로세스가 독립된 메모리 공간과 Python 인터프리터를 가지므로, CPU 자원을 최대한 활용할 수 있습니다. 이 모듈은 프로세스 생성, ...
6월 1일 11:36에 게시됨