Boost logo

Boost :

Subject: Re: [boost] [flyweight] post-review version available
From: vicente.botet (vicente.botet_at_[hidden])
Date: 2008-09-09 01:48:40

----- Original Message -----
From: "JOAQUIN M. LOPEZ MUÑOZ" <joaquin_at_[hidden]>
To: <boost_at_[hidden]>
Sent: Monday, September 01, 2008 6:26 PM
Subject: [boost] [flyweight] post-review version available

> Hello,
> I'm happy to announce the availability of the post-review
> version of Boost.Flyweight:
> *What's new:*
> I've tried to address most of the suggestions and comments
> raised during the review. The two most important changes
> are:
> 1. Alberto Barbati's insightful review has led to the
> introduction of so-called key-value flyweights
> ( ). This type of flyweights is
> meant for the situations where constructing the underlying
> type is expensive and must be avoided except if absolutely
> necessary. I think the design is robust enough and covers
> the variants (inner/outer key) that arose during the
> discussion with Alberto.
> 2. A comprehensive performance section is provided
> ( ).
> *What's pending*
> 1. Some of the suggestions given at the review, like
> reducing intermodule_holder to static_holder when
> permissible (Vicente Botet) or studying read/write
> locking policies are still pending or have been postponed
> to later releases of the library. I felt the current
> state is sufficiently robust for publication.
> 2. Serialization support is currently broken, pending
> the resolution of a proposed feature to add to
> Boost.Serialization (run-time archive helpers).
> I'd be very grateful if you can take a look at the post-
> review version of Boost.Flyweight (specially if you were
> a reviewer), test it and comment on it, with emphasis on
> the new features like key-value flyweights. If people are
> happy with this revision my target release for inclusion
> will be Boost 1.38.

Hi Joaquin,

I have take a look to the library.

The way you have integrated the Key-value in the flywight class is very

I have just some questions related to the integration of flywight<T> in
multi_index. Can we use flywight<T> as a member field of a multi_index
container? what about when the multi_index container is in shared memory?

Thanks for the clear performance section you have added.
You say "Actually the types tested are not exactly those listed above, but
instrumented versions that keep track of the allocated memory for profiling
purposes. "

These instrumented versions can be also useful to the user to make its own
messures, are them available somewhere?

Do you plan to manage the following items on the release 1.38
* On platforms on which static variables are unique inter DLL the
intermodule_holder specifier type can be a static_holder_class.
* Add an exclusive core specifier (see my review)
Otherwise, could you add them to the Future Work section?

I've runned the test and the examples on
- g++ (GCC) 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)

Every think works well except the serialization test and example are broken.
How do you plan to manage this issue as Robert do not plan to take in
account the helper you need?

Kind regards,
Vicente Juan Botet Escribá

Boost list run by bdawes at, gregod at, cpdaniel at, john at