]> granicus.if.org Git - python/commitdiff
Note that two-phase cyclic barriers are suitable for use in loops.
authorRaymond Hettinger <python@rcn.com>
Mon, 17 Jan 2011 21:05:07 +0000 (21:05 +0000)
committerRaymond Hettinger <python@rcn.com>
Mon, 17 Jan 2011 21:05:07 +0000 (21:05 +0000)
Doc/whatsnew/3.2.rst

index e342b87786cb028f1ec0e9f4b06fd0f7ab9cc0d1..bdcf5880a80c4e5aeab06dea01577ae6f2cad4fb 100644 (file)
@@ -834,8 +834,10 @@ Barriers can work with an arbitrary number of threads.  This is a generalization
 of a `Rendezvous <http://en.wikipedia.org/wiki/Synchronous_rendezvous>`_ which
 is defined for only two threads.
 
-The barrier is designed to be cyclic, making it reusable once all of the
-waiting threads are released.
+Implemented as a two-phase cyclic barrier, :class:`~threading.Barrier` objects
+are suitable for use in loops.  The separate *filling* and *draining* phases
+assure that all threads get released (drained) before any one them can loop back
+and re-enter the barrier.  The barrier fully resets after each cycle.
 
 If any of the predecessor tasks can hang or be delayed, a barrier can be created
 with an optional *timeout* parameter.  Then if the timeout period elapses before