diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2014-11-27 22:07:53 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-11-27 22:08:17 +0100 |
commit | 4760278007213bafadb231451f79f763a5a4b07a (patch) | |
tree | e7b5bb36bbde8d585e91b29cf532a146c8133a42 | |
parent | d0f8b94b432ef99337c2a890c02571cba6ae3a71 (diff) | |
parent | 2443e522f0059176ff8717c9c753eb6fe7e7bbf1 (diff) | |
download | ffmpeg-4760278007213bafadb231451f79f763a5a4b07a.tar.gz |
Merge commit '2443e522f0059176ff8717c9c753eb6fe7e7bbf1'
* commit '2443e522f0059176ff8717c9c753eb6fe7e7bbf1':
lavu: add wrappers for the pthreads mutex API
Merged-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavutil/thread.h | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/libavutil/thread.h b/libavutil/thread.h new file mode 100644 index 0000000000..62e1340ceb --- /dev/null +++ b/libavutil/thread.h @@ -0,0 +1,53 @@ +/* + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +// This header should only be used to simplify code where +// threading is optional, not as a generic threading abstraction. + +#ifndef AVUTIL_THREAD_H +#define AVUTIL_THREAD_H + +#include "config.h" + +#if HAVE_PTHREADS || HAVE_W32THREADS + +#if HAVE_PTHREADS +#include <pthread.h> +#else +#include <compat/w32pthreads.h> +#endif + +#define AVMutex pthread_mutex_t + +#define ff_mutex_init pthread_mutex_init +#define ff_mutex_lock pthread_mutex_lock +#define ff_mutex_unlock pthread_mutex_unlock +#define ff_mutex_destroy pthread_mutex_destroy + +#else + +#define AVMutex char + +#define ff_mutex_init(mutex, attr) (0) +#define ff_mutex_lock(mutex) (0) +#define ff_mutex_unlock(mutex) (0) +#define ff_mutex_destroy(mutex) (0) + +#endif + +#endif /* AVUTIL_THREAD_H */ |