
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