Boost logo

Boost :

From: Matthias Troyer (troyer_at_[hidden])
Date: 2007-06-12 04:05:13


On Jun 4, 2007, at 7:18 PM, Andy wrote:

> Other than the current approach (which I agree is not acceptable),
> I see
> 6 alternatives to the uuid::create() function. I believe all of them
> have been mentioned before.
>
> ...
> 5. Create a function object (that has the random number generator
> as a
> member) that produces uuids. Is this too complicated?
> i.e.:
> class uuid_generator {
> public:
> uuid_generator() {
> engine.seed(get_seed());
> }
> uuid operator() const;
> private:
> Engine& engine;
> };
> ...
>

In order to allow users with special needs full control, the ability
to provide an engine to create is essential to have - at least as one
option. I'm thinking of 100'000+-node BlueGene machines and planned
new 1'000'000+ -CPU 10-petaflop machines. Getting good UUIDs on such
machines might need special considerations, and by having the option
to pass an engine these could be taken care of.

Matthias


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk