이펙티브 파이썬 7장 - 동시성과 병렬성
동시성 vs 병렬성구분동시성 (Concurrency)병렬성 (Parallelism)의미여러 작업을 번갈아가며 처리 (겉으로는 동시에)여러 작업을 실제로 동시에 처리처리 방식하나의 코어가 작업을 빠르게 전환하며 처리여러 코어가 각 작업을 동시에 실행예시카페에서 혼자 주문 받고, 계산하고, 음료 만들기카페에서 세 명이 각각 주문, 계산, 음료 만들기목적응답성 향상, I/O 대기 시간 활용처리 속도 향상파이썬스레드, 코루틴 (asyncio)하위 프로세스, C 확장, 시스템 콜자바스크립트이벤트 루프, 프로미스, async/await Web Workers, Node.js의 Worker Threads GIL (Global Interupt Lock)파이썬에는 GIL이라는 전역 인터프리터 락이 존재함하나의 스레드만 파..
2025. 4. 1.
이펙티브 파이썬 4장 - 컴프리헨션과 제너레이터
Better way 27 map과 filter 대신 컴프리헨션을 사용하라# map과 filter 사용numbers = [1, 2, 3, 4, 5, 6]even_numbers = list(filter(lambda x: x % 2 == 0, numbers))even_squares = list(map(lambda x: x ** 2, even_numbers))# 좋은 예시 - 리스트 컴프리헨션even_squares = [x ** 2 for x in numbers if x % 2 == 0] Better way 28 컴프리헨션 내부에 제어 하위 식을 세 개 이상 사용하지 말라# 안 좋은 예시matrix = [[[1, 2], [3, 4]], [[5, 6], [7, 8]]]flattened = [num for laye..
2025. 3. 18.