thread: Provide no-op variants for pthread_once
This commit is contained in:
parent
08377f9c3b
commit
c53e796f8b
@ -39,6 +39,11 @@
|
|||||||
#define ff_mutex_unlock pthread_mutex_unlock
|
#define ff_mutex_unlock pthread_mutex_unlock
|
||||||
#define ff_mutex_destroy pthread_mutex_destroy
|
#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
|
#else
|
||||||
|
|
||||||
#define AVMutex char
|
#define AVMutex char
|
||||||
@ -48,6 +53,18 @@
|
|||||||
#define ff_mutex_unlock(mutex) (0)
|
#define ff_mutex_unlock(mutex) (0)
|
||||||
#define ff_mutex_destroy(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
|
||||||
|
|
||||||
#endif /* AVUTIL_THREAD_H */
|
#endif /* AVUTIL_THREAD_H */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user