Boost logo

Boost :

From: Andy (atompkins_at_[hidden])
Date: 2007-05-09 15:10:27


"Jake Voytko" <jakevoytko_at_[hidden]> wrote in
news:16c2caba0705091011k7203bc43uf4b71f27dbd196a7_at_[hidden]:

> Short answer: Accept, so long as issues with the create() function are
> worked out.

< snip >
 
> - What is your evaluation of the documentation?
> I felt that for such a minimal library, I had to dig too much for the
> first usable code example, which is generally the first thing I look
> for when using a new library.

I will create an intro section that shows common uses.

>
> - What is your evaluation of the potential usefulness of the library?
> In environments where only a single machine generates the IDs, it is
> extremely useful. However, as others have mentioned, in
> guid::create(), seeding the random number generator with time(0)
> certainly negates the primary reason to use GUIDs at all, as in a
> multiple machine environment it's no longer possible to guarantee that
> the IDs are unique. I feel that this contradicts the entire reason I
> would look for an outside library to generate GUIDs rather than do the
> legwork towards implementing one myself. The documentation for the
> library touts concurrency-heavy applications in its rationale section,
> but it seems concurrency issues would be introduced by time(0)

See other posts. This will be fixed by passing a random number generator
to the create function.

>
> I liked the suggestion of MAC address + time generation, but I don't
> know how feasible this would be to accomplish in multiple operating
> systems with the same implementation. Even simpler, the user could
> have the option of giving the random number generator their own seed.
> Simply skipping it could stick with time(0), but if they know they
> could run into concurrency issues, they could provide their own
> solution.

< snip >

Andy.


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