연재 순서 1. threading 2. Condition & Semaphore 3. Queue 4. multiprocessing 5. 비동기 (gevent) 6. 분산 (celery) 7. GPGPU (PyCUDA) 8. 코루틴,asyncio,async/awiat 9. concurrent.future4. Multiprocessing멀티 프로세싱 모듈은 Python 버전 2.6에 추가되었습니다. 원래 버전은 Jesse Noller와 Richard Oudkerk에 의해 PEP 371에서 정의되었었습니다. multiprocessing 모듈을 사용하면 스레딩 모듈로 스레드를 생성 할 수있는 것과 동일한 방식으로 프로세스를 생성 할 수 있습니다. 여기서 주요 포인트는 프로세스를 생성하기 때문에 GIL (Globa..
연재 순서 1. threading 2. Condition & Semaphore 3. Queue 4. multiprocessing 5. 비동기 (gevent) 6. 분산 (celery) 7. GPGPU (PyCUDA) 8. 코루틴,asyncio,async/awiat 9. concurrent.future 3. Queue다음 예 에서는 생산자-소비자 패턴의 가장 중요한 큐를 다룰 것이다. 생산자가 아이템을 큐에 넣어주면 소비자들은 그것을 가져와서 사용하는데 , 그것들 사이의 동기화는 Queue 에서 모두 해결해준다. 즉 더이상 생산자가 task 를 추가할 수 없으면 put 에서 대기를 하게되고, 소비자가 더 이상 가져올 task 가 없으면 get 에서 기다리게 된다.import threading import ..
연재 순서 1. threading 2. Condition & Semaphore 3. Queue 4. multiprocessing 5. 비동기 (gevent) 6. 분산 (celery) 7. GPGPU (PyCUDA) 8. 코루틴,asyncio,async/awiat 9. concurrent.future 2. Condition파이썬의 Condidtion 은 쉽게 생각하면 Event + Mutex 쯤으로 보면된다. 다음예를보면 소비자 쓰레드들은 Condition 이 set 이 되길 기다리고 있다. 생산자 쓰레드는 이 Condition을 set 해줘서 다른 쓰레드들에게 진행해도 좋다고 고지한다. 기다리고 있던 쓰레드 모두가 통과할 수 는 없고 상호 배제되어 하나씩 통과된다 . import threading im..
연재 순서 1. threading 2. Condition & Semaphore 3. Queue 4. multiprocessing 5. 비동기 (gevent) 6. 분산 (celery) 7. GPGPU (PyCUDA) 8. 코루틴,asyncio,async/awiat 9. concurrent.future1. 쓰레드 파이썬에서의 쓰레드는 보통 Thread 혹은 Threading 모듈을 사용할 수 있다. 또한 Queue 모듈을 통해서 생산자-소비자 패턴을 구현한다. 여러가지 이유로 Thread 보다는 Threading 모듈을 사용하길 추천한다.따라서 이 글에서는 Threading 과 Queue 에 대해서 알아본다.daemon 파이썬에서 thread 는 기본적으로 daemon 속성이 False 인데, 메인 쓰레드..
@property 이야기 private 와 public 파이썬에서는 클래스 캡슐화에 필요한 접근지정자를 잘 안쓰는 편이다. 어떤 부분에서는 public 을 권장하는 느낌도 든다. public 이 훨씬 편하니깐~ㅎㅎ (예를들어 시작은 그냥 public 변수를 사용하게 하다가 먼가 제약이 필요할 때 쯤이면 아래 공부할 @property 등으로 처리한다 ) 제약보다는 자유도/책임감을 높히는 방향의 언어인 파이썬 답다. 먼저 말해두는데 파이썬에서 접근지정자는 없다. 즉 아래와 같이 코딩해도 에러가 안난다는 뜻이다class Test: def __init__(self): self.public_field = 5 self.__private_field = 6 self._protected_field = 7 def __pr..
functools.partial 에 대한 설명 하나 이상의 인수가 이미 채워진 함수의 새 버전을 만들기 위해 사용된다.함수의 새 버전은 그 자체를 기술 하고 있다. functools.partial 에 대한 데모 첫째, 지수를 명시적으로 수행하는 함수를 만든다고 하자. (파이썬의 내장된 pow () 함수와 비슷하다)def power(base, exponent): return base ** exponent 이제 정해진 지수 2와 3을 갖는 전용 사각형 및 큐브 함수를 원한다면 어떻게 될까? 이때 우리는 다음과 같이 할 수 있을 것이다.def square(base): return power(base, 2) def cube(base): return power(base, 3) 이 방법이 나름 효과적이지만 powe..
- Total
- Today
- Yesterday
- CORDA
- 이더리움
- Actor
- 파이썬
- hyperledger fabric
- Adapter 패턴
- 파이썬 강좌
- 스칼라 강좌
- 주키퍼
- Play2
- 하이브리드앱
- 파이썬 데이터분석
- 파이썬 머신러닝
- 스칼라 동시성
- 스위프트
- 파이썬 동시성
- play 강좌
- 엔터프라이즈 블록체인
- 하이퍼레저 패브릭
- 그라파나
- 블록체인
- Akka
- Play2 로 웹 개발
- Hyperledger fabric gossip protocol
- 안드로이드 웹뷰
- 스칼라
- 플레이프레임워크
- Golang
- play2 강좌
- akka 강좌
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |