Changes between Version 31 and Version 32 of LibrariesUnderConstruction


Ignore:
Timestamp:
Feb 10, 2009, 12:14:46 AM (14 years ago)
Author:
viboes
Comment:

Adding Boost.Synchro

Legend:

Unmodified
Added
Removed
Modified
  • LibrariesUnderConstruction

    v31 v32  
    372372
    373373---------------------------------------------------------------------------------------------------
     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---------------------------------------------------------------------------------------------------
    374383== Boost.!SmartPtr.!UniquePtr ==
    375384 * '''Author(s):'''  Howard Hinnant <hinnant@twcny.rr.com>
     
    380389 * '''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).
    381390The 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
    382407
    383408---------------------------------------------------------------------------------------------------
     
    668693 They are also used when a decimal number is encoded using the BCD format (binary coded decimal) or to encode telephone numbers.
    669694
    670 ---------------------------------------------------------------------------------------------------
    671 == Rendez-vous  ==
    672  * '''Suggested by:''' Vicente J. Botet Escriba 
    673  * '''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.
    674695
    675696---------------------------------------------------------------------------------------------------
     
    717738 * '''Description:''' a container mimicking the interface of std::vector except that it provides iterator and reference stability at the expense of losing memory contiguity.
    718739
    719 --------------------------------------------------------------------------------------------------
    720 == Sync ==
    721  * '''Suggested by:''' Vicente J. Botet Escriba 
    722  * '''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 
    730740---------------------------------------------------------------------------------------------------
    731741== STM  ==
     
    766776 * [#Boost.Coroutines Boost.Coroutines]
    767777 * [#Boost.Fiber Boost.Fiber]
     778 * [#Boost.InterThreads Boost.InterThreads]
    768779 * [#Poet Poet]
    769  * [#Rendez-vous Boost.Rendez-vous]
     780 * [#Boost.RendezVous Boost.Rendez-vous]
    770781 * [#STM STM]
    771  * [#Sync Sync]
     782 * [#Boost.Synchro Boost.Synchro]
    772783 * [#Boost.ThreaderJoiner Boost.Threader-Joiner]
    773784