|
From: Bart V. A. <bar...@gm...> - 2009-02-07 14:51:49
|
On Fri, Feb 6, 2009 at 8:19 PM, Julian Seward <js...@ac...> wrote: > If you can suggest some criteria that allows to distinguish the case you > consider an error, from a "safe" destruction of a barrier, that would be > very helpful. But given that the POSIX spec is basically broken, I don't > see how it would be possible to construct such a criteria. How about comparing the vector clocks of the most recent barrier_wait() calls with the vector clock of the thread destroying the barrier ? This should allow to find out whether or not barrier_wait() calls and a barrier_destroy() call that explicitly destroys a barrier or any free() call that implicitly destroys a barrier were ordered via a synchronization operation. Bart. |