Boost logo

Boost :

From: Andrey Semashev (andysem_at_[hidden])
Date: 2007-09-02 15:37:57


Hello Tobias,

>>> Another potential issue: It seems Win32 and MacOS variants are currently
>>> not exception-safe. That is, the initialization routine isn't rerun if
>>> it has thrown the first time 'once' was called.
>>
>> Yep, thanks for spotting that. I'll fix that in a couple of days and
>> update the library archive in the Vault. I'll post here a notification
>> when it's done.

> Looking forward to it!

Ok, I reworked the lightweight call_once implementations for most of
the supported platforms. Changes include:
- Removed lexical_cast and iostreams.
- Added Vista API support. This implementation does not emulate mutex
by sleeping, thus improving performance.
- Fixed exception safety issues.
- Explicit memory barriers usage is now enabled by default (if the
appropriate support is discovered during compilation).

The implementation is uploaded to the Vault and available through the
same URL:

http://tinyurl.com/yjozfn

Since there were major changes, I would really appreciate if someone
experienced take a look at it.

-- 
Best regards,
 Andrey                            mailto:andysem_at_[hidden]

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