Thread barrier with:
* fixed (at construction) number n of participating threads {T1,T2,T3,...,Tn}
* unknown number of rounds.
Requirements:
* there is some R such that each participating thread makes
R calls to Sync() followed by its one and only call to Exit().
Guarantees:
* for any two threads Ti and Tj and round number r <= R,
everything done by Ti before its r'th call to Sync() happens before
everything done by Tj after its r'th call to Sync().
Note:
* it's not required that the thread that constructs the barrier participates.
BUG=
Review URL: https://codereview.chromium.org//1337943004 .