Re: [Boost-bugs] [Boost C++ Libraries] #3789: boost::object_pool::free() is very slow.

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #3789: boost::object_pool::free() is very slow.
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2012-05-10 21:10:58

#3789: boost::object_pool::free() is very slow.
  Reporter: Dai Yun <dy95020@…> | Owner: edupuis
      Type: Bugs | Status: closed
 Milestone: Boost 1.42.0 | Component: pool
   Version: Boost 1.41.0 | Severity: Problem
Resolution: fixed | Keywords: object_pool
Changes (by edupuis):

  * status: assigned => closed
  * resolution: => fixed


 (In [78412]) Added a pool.order() function, which transforms an unordered
 pool into an ordered one. Call this function in
 object_pool::~object_pool() if suitable, which allows to use pool.malloc()
 and instead of pool.ordered_malloc() and pool.ordered_free().

 This changes the complexity of object_pool.destroy(), going from O(n) to
 O(1), while the complexity of the destructor goes from O(n) to O(n log n)
 if the pool user has not released all pool objects, otherwise the
 destructor is O(1).

 This fixes #3789 and makes it possible to have pools holding millions of

Ticket URL: <>
Boost C++ Libraries <>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:09 UTC