Boost logo

Boost Announcement :

Subject: [Boost-announce] [boost] [Review] Formal Review of Proposed Boost.Chrono Library Starts TOMORROW
From: Anthony Williams (anthony.ajw_at_[hidden])
Date: 2010-11-05 13:25:50

Hi everyone,

The review of Vicente Botet's Chrono library starts TOMORROW (November
6th) and lasts until November 15th unless an extension occurs.

What is it?

Boost.Chrono aims to implement the new time facilities in C++0x, as
proposed in N2661 - A Foundation to Sleep On
( That
document provides background and motivation for key design decisions and
is the source of a good deal of information in this documentation.

See the current C++0x working draft at for
details of what was accepted.

The Boost.Chrono library provides:

   * A means to represent time durations: managed by the generic
     duration class . Examples of time durations include days, minutes,
     seconds and nanoseconds, which can be represented with a fixed
     number of clock ticks per unit. All of these units of time
     duration are united with a generic interface by the duration

   * A type for representing points in time: time_point. A time_point
     represents an epoch plus or minus a duration. The library leaves
     epochs unspecified. A time_point is associated with a clock.

   * Several clocks, some of which may not be available on a particular
     platform: system_clock, monotonic_clock and
     high_resolution_clock. A clock is a pairing of a time_point and
     duration, and a function which returns a time_point representing

   * To make the timing facilities more generally useful, Boost.Chrono
     provides a number of additional clocks that are thin wrappers
     around the operating system's time APIs, thereby allowing the
     extraction of read (wall clock) time, user CPU time, system CPU

    - process_real_cpu_clock, captures real (wall clock) CPU times.
    - process_user_cpu_clock, captures user-CPU times.
    - process_system_cpu_clock, captures system-CPU times.
    - A tuple-like class __process_cpuclock_, that captures real,
      user-CPU, and system-CPU times together.
    - A thread_clock thread monotonic clock, when supported by a platform.

   * Boost.Chrono also includes typeof registration for duration and
     time_point to permit using emulated auto with C++03 compilers.

   * Boost.Chrono also provides I/O for duration and time_point. It
     builds on <boost/ratio/ratio_io.hpp> to provide readable and
     flexible formatting and parsing for types in
     <boost/chrono.hpp>. The duration unit names can be customized
     through a new facet: duration_punct.

Getting the library
The latest version of this library may be downloaded from


Boost.Chrono depends on Boost.Ratio
and optionaly Boost.System Header Only

and the docs may be viewed here


You can get all these information also (which should avoid some long
links) from

Writing a review

If you feel this is an interesting library, then please submit your
review to the developer list (preferably), or to the review manager.

Here are some questions you might want to answer in your review:

- What is your evaluation of the design?
- What is your evaluation of the implementation?
- What is your evaluation of the documentation?
- What is your evaluation of the potential usefulness of the library?
- Did you try to use the library? With what compiler? Did you have any problems?
- How much effort did you put into your evaluation? A glance? A quick
- reading? In-depth study?
- Are you knowledgeable about the problem domain?

And finally, every review should answer this question:

- Do you think the library should be accepted as a Boost library?

Be sure to say this explicitly so that your other comments don't
obscure your overall opinion.

Review Manager for the proposed Boost.Chrono library

Author of C++ Concurrency in Action
just::thread C++0x thread library   
Just Software Solutions Ltd
15 Carrallack Mews, St Just, Cornwall, TR19 7UL, UK. Company No. 5478976
Unsubscribe & other changes:

Boost-announce list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at