| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.txt | 2012-01-13 | 1.8 kB |
|
| cds-1.0.0.zip | 2011-12-31 | 2.2 MB | |
| cds-1.0.0.tar.gz | 2011-12-31 | 1.4 MB | |
| Totals: 3 Items | 3.6 MB | 0 | |
This version is completely rewritten to support intrusive version of lock-free containers and more lightweight garbage collectors interface. The class hierarchy and interfaces have been completely reimplemented from scratch. 1. Added: intrusive containers. Many lock-free containers in libcds have the intrusive counterparts. The library is fully refactored to support intrusive containers. Class hierarchy is changed: almost all non-intrusive container classes are based on their intrusive versions. Two new namespace is added: cds::intrusive - for intrusive containers cds::container - for non-intrusive containers Namespaces by container type (cds::queue, cds::map and so on) have been removed. 2. Added: New option-based approach is used for class declaration instead old traits-based one. This approach allows to declare template arguments in position-independent manner that is very useful for complex template declarations. Option-based declarations use C++0x variadic templates if compiler supports it (GCC), otherwise (MS VC) an emulation is used. 3. Changed: garbage collectors interface is generalized. cds::gc::GC (where GC is one of HP, HRC, PTB) classes has been added. 4. Removed: tagged pointer GC. This GC - unsafe for complex data structure - x86-specific since it requires double-width CAS primitive - memory-consuming since it requires separate free-list for each type stored in the containers 5. Default threading model is changed (see doc for cds::threading namespace): - for Windows and MSVC++, CDS_THREADING_WIN_TLS is the default now - for *nix and GCC, CDS_THREADING_PTHREAD is the default now 6. Added GCC 4.6 support (constexpr) 7. Added Microsoft Visual Studio 2010 (vc10) solution