Hi everybody,
I put log4cpp 0.3.0 on SF, which is the first release from the new
'development' branch. It introduces the first steps for mulithreading
support.
This release uses omniORB4s omniThread thread abstraction library,
mainly because at LifeLine we use log4cpp mostly in omniORB bases CORBA
applications. The used set of MT primitives is rather minimal:
a (non recursive) mutex: log4cpp::threading::Mutex
a scoped lock for the mutex: log4cpp::threading::ScopedLock
a holder for thread local objects:
log4cpp::threading::ThreadLocalDataHolder<typename T>
It should be rather straightforward to base MT support on other
threading libraries than omniThreads. A start has been made to implement
this for Boosts threads, but this has not been integrated yet (help
wanted!).
Implementations for other libraries are welcome too.
TODOs:
* update of MSVC6 project files
* update of BCB5 project files
* addition other plaforms than Linux and Solaris to BB_CHECK_OMNITHREADS.m4
* more documentation (as always)
* tests
* implementations for other threading libraries, e.g. Boost, Win32
native, POSIX.
Don't be shy if you can/want to help! :-)
Cheers,
Bastiaan Bakker
|