프로그래밍

boost object_pool의 사용

제페 2014. 4. 19. 23:41
반응형

boost 라이브러리의 메모리 풀(memory pool) 관련 클래스 중 하나인 object_pool은  


메모리 풀의 역할도 하면서 동시에 클래스의 생성자/소멸자 호출이 가능하다.


object_pool::malloc(...)

클래스 크기만큼의 메모리만 할당을 해준다.(생성자 호출 X)


object_pool::free(...)

클래스 크기만큼의 메모리를 해제한다.(소멸자 호출 X)


object_pool::construct(...)

클래스 크기만큼의 메모리를 할당하며, 생성자를 호출한다. (생성자 호출 O)

주의할 점은 생성자의 인자로는 최대 3개까지만 받을 수 있으며, 4개 이상의 인자를 받는 생성자는 호출 자체를 할 수 없다.


object_pool::destroy(...)

클래스 크기만큼의 메모리를 해제하며, 소멸자를 호출한다.(소멸자 호출 O)


반응형