로딩
요청 처리 중입니다...

[Design Patterns] Object Pool Design Pattern

 [Design Patterns] Object Pool Design Pattern

Intro 객체 생성 비용이 비싼 경우에 사용할 수 있는 패턴 중에 Object Pool Design Pattern이 있다. Category · 생성 패턴 (Creational Pattern) Content Pool이란 단어에서 알 수 있듯이 어딘가에 임시 보관을 해놓고, 필요한 경우에 가져다 쓸 수 있음을 알 수 있다.

어딘가에 저장해놓기 위해서 별도의 Pool을 생성하는데, Pool을 생성할 때는 병렬처리에 문제가 되지 않는 타입을 사용해야 한다. 그 중 한가지로 System.Collections.Concurrent의 ConcurrentBag이 있다.

사용 방법은 System.Collections.Generic의 List와 유사한데, 병렬처리를 하더라도 TryTake method를 통해서 문제가 되지 않도록 처리할 수가 있다. 실제 ObjectPool Pat..........