Changes between Version 31 and Version 32 of LibrariesUnderConstruction
- Timestamp:
- Feb 10, 2009, 12:14:46 AM (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
LibrariesUnderConstruction
v31 v32 372 372 373 373 --------------------------------------------------------------------------------------------------- 374 == Boost.!RendezVous == 375 * '''Author(s):''' Vicente J. Botet Escriba 376 * '''Version:''' 0.0.0 377 * '''State:''' Draft 378 * '''Last upload:''' 2009 Fev 10 379 * '''Links:''' [https://svn.boost.org/svn/boost/sandbox/synchro Boost Sandbox] 380 * '''Description:''' Concurrent components may interact in different ways: they may access the same objects by, for example, executing functions of these objects; or they may communicate directly by executing functions of each other. These library will provide the so-called rendezvous mechanism for handling direct communication between active objects. 381 382 --------------------------------------------------------------------------------------------------- 374 383 == Boost.!SmartPtr.!UniquePtr == 375 384 * '''Author(s):''' Howard Hinnant <hinnant@twcny.rr.com> … … 380 389 * '''Description:''' unique_ptr is a class template smart pointer currently in the [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2800.pdf C++0X CD1 draft]. It is intended to be a safer and more flexible replacement for auto_ptr. It represents sole (unique) ownership of a resource such as memory (like auto_ptr). 381 390 The actual C++0X unique_ptr makes use of a new C++ language feature called rvalue reference which is similar to our current reference (&), but spelled &&. This emulation is intended to capture most of the behavior of the C++0X unique_ptr but work with C++03 compilers. Furthermore this emulation makes use of boost library facilities and has been placed in the boost namespace. Though at the time of this writing, this library is not part of the official boost library release. 391 392 -------------------------------------------------------------------------------------------------- 393 == Boost.Synchro == 394 * '''Author(s):''' Vicente J. Botet Escriba 395 * '''Version:''' 0.0.0 396 * '''State:''' Draft 397 * '''Last upload:''' 2009 Fev 10 398 * '''Links:''' [https://svn.boost.org/svn/boost/sandbox/synchro Boost Sandbox] 399 * '''Description:''' 400 * Lock traits: very specific traits classes, some of them encapsulate a single trait for a Lockable type; for example, is a lock recursive (is_recursive), is useful in a multi threaded context (is_multi_threaded). 401 * Finding the best lock: Inverse traits can match a lockable type based on specific traits, for a given family of lock types. 402 * Synchronization family: A class that will do internal locking can be parameterized by the type of synchronization family needed to achieve the desired level of concurrency control. This depends of the usage scope of this class, and this can be mono_threaded, multi_threaded, multi_process. 403 * Strict lockers: A strict_locker is a scoped lock guard ensuring the mutex is locked on the scope of the lock, by locking the mutex on construction and unlocking it on destruction. 404 * External lockers: An alternative or complementary approach to internal locking is to support external locking for an object - Multiple calls may be grouped within the same externally defined critical region. 405 * Reverse locker: reverse_lock. 406 382 407 383 408 --------------------------------------------------------------------------------------------------- … … 668 693 They are also used when a decimal number is encoded using the BCD format (binary coded decimal) or to encode telephone numbers. 669 694 670 ---------------------------------------------------------------------------------------------------671 == Rendez-vous ==672 * '''Suggested by:''' Vicente J. Botet Escriba673 * '''Description:''' Concurrent components may interact in different ways: they may access the same objects by, for example, executing functions of these objects; or they may communicate directly by executing functions of each other. These library will provide the so-called rendezvous mechanism for handling direct communication between active objects.674 695 675 696 --------------------------------------------------------------------------------------------------- … … 717 738 * '''Description:''' a container mimicking the interface of std::vector except that it provides iterator and reference stability at the expense of losing memory contiguity. 718 739 719 --------------------------------------------------------------------------------------------------720 == Sync ==721 * '''Suggested by:''' Vicente J. Botet Escriba722 * '''Description:'''723 * Lock traits: very specific traits classes, some of them encapsulate a single trait for a Lockable type; for example, is a lock recursive (is_recursive), is useful in a multi threaded context (is_multi_threaded).724 * Finding the best lock: Inverse traits can match a lockable type based on specific traits, for a given family of lock types.725 * Synchronization family: A class that will do internal locking can be parameterized by the type of synchronization family needed to achieve the desired level of concurrency control. This depends of the usage scope of this class, and this can be mono_threaded, multi_threaded, multi_process.726 * Strict lockers: A strict_locker is a scoped lock guard ensuring the mutex is locked on the scope of the lock, by locking the mutex on construction and unlocking it on destruction.727 * External lockers: An alternative or complementary approach to internal locking is to support external locking for an object - Multiple calls may be grouped within the same externally defined critical region.728 * Reverse locker: reverse_lock.729 730 740 --------------------------------------------------------------------------------------------------- 731 741 == STM == … … 766 776 * [#Boost.Coroutines Boost.Coroutines] 767 777 * [#Boost.Fiber Boost.Fiber] 778 * [#Boost.InterThreads Boost.InterThreads] 768 779 * [#Poet Poet] 769 * [# Rendez-vous Boost.Rendez-vous]780 * [#Boost.RendezVous Boost.Rendez-vous] 770 781 * [#STM STM] 771 * [# Sync Sync]782 * [#Boost.Synchro Boost.Synchro] 772 783 * [#Boost.ThreaderJoiner Boost.Threader-Joiner] 773 784