Browse Source

Merge commit 'c53e796f8b69799b7ad6d28fbab981d37edf1bc9'

* commit 'c53e796f8b69799b7ad6d28fbab981d37edf1bc9':
  thread: Provide no-op variants for pthread_once

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
tags/n3.0
Hendrik Leppkes 10 years ago
parent
commit
f05021f3f4
1 changed files with 17 additions and 0 deletions
  1. +17
    -0
      libavutil/thread.h

+ 17
- 0
libavutil/thread.h View File

@@ -43,6 +43,11 @@
#define ff_mutex_unlock pthread_mutex_unlock
#define ff_mutex_destroy pthread_mutex_destroy

#define AVOnce pthread_once_t
#define AV_ONCE_INIT PTHREAD_ONCE_INIT

#define ff_thread_once(control, routine) pthread_once(control, routine)

#else

#define USE_ATOMICS 1
@@ -54,6 +59,18 @@
#define ff_mutex_unlock(mutex) (0)
#define ff_mutex_destroy(mutex) (0)

#define AVOnce char
#define AV_ONCE_INIT 0

static inline int ff_thread_once(char *control, void (*routine)(void))
{
if (!*control) {
routine();
*control = 1;
}
return 0;
}

#endif

#endif /* AVUTIL_THREAD_H */

Loading…
Cancel
Save