Hi James, James Berry <[EMAIL PROTECTED]> writes:
> I see an issue in the 3.0 codebase with the atomic increment and > decrement routines: Nice catch. The current implementation definitely has a problem with the integer size. Ideally it should be the same size as sizeof (void*). I would also add that the POSIX implementation is insane - it serializes all atomic operations through a *global* mutex. An implementation that uses an individual mutex for each counter will perform better than this, which makes the whole exercise pointless. > - Remove the routines altogether, if we really don't use them > anymore. Atomic ops were used in deprecated DOM implementation which has been removed in 3.0.0. It will also take a substantial effort to provide proper implementation (see above) for all platforms. I am therefore for removing the thing altogether (If we ever need them (and I really hope we won't) we will have to provide an implementation that is faster than mutexes and this will be many times harder than restoring stuff from SVN). Boris -- Boris Kolpackov, Code Synthesis Tools Open source XML data binding for C++: http://codesynthesis.com/products/xsd Mobile/embedded validating XML parsing: http://codesynthesis.com/products/xsde --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
