X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=barrier%2Fbarrier.h;h=dd5d39c0c7d9f56f112a35bb2c7befed1e23cdd9;hb=6ad55b673cd0430f7c525f0d19e4fff5b94c971e;hp=871e10fd5feb595826f181d60bc5e31c0be34a29;hpb=1acf3219e49d5194740cc600a76e68962fbdce6f;p=model-checker-benchmarks.git diff --git a/barrier/barrier.h b/barrier/barrier.h index 871e10f..dd5d39c 100644 --- a/barrier/barrier.h +++ b/barrier/barrier.h @@ -2,7 +2,10 @@ class spinning_barrier { public: - spinning_barrier (unsigned int n) : n_ (n), nwait_ (0), step_(0) {} + spinning_barrier (unsigned int n) : n_ (n) { + nwait_ = 0; + step_ = 0; + } bool wait() { unsigned int step = step_.load (); @@ -15,7 +18,7 @@ class spinning_barrier { } else { /* Run in circles and scream like a little girl. */ while (step_.load () == step) - ; + thrd_yield(); return false; } }