pthread: Avoid crashes/odd behavior caused by spurious wakeups
authorBen Jackson <ben@ben.com>
Fri, 14 Sep 2012 04:26:43 +0000 (21:26 -0700)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 14 Sep 2012 04:36:55 +0000 (06:36 +0200)
commite3329474a366de066b25e86f35f5abf9c5a4b7b2
treec66cf53aba6fad7e79590db86dcd8e92c2b35c7a
parent93b240f4a59348c07d3d7e4862227f6949c51e14
pthread: Avoid crashes/odd behavior caused by spurious wakeups

pthread_wait_cond can wake up for no reason (Wikipedia: Spurious_wakeup).
The FF_THREAD_SLICE thread mechanism could spontaneously execute jobs or
allow the caller of avctx->execute to return before all jobs were complete.
This adds tests to both cases to ensure the wakeup is real.

Signed-off-by: Ben Jackson <ben@ben.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/pthread.c