summaryrefslogtreecommitdiff
path: root/libavutil/thread.h
Commit message (Collapse)AuthorAge
* avutil/thread: fix strict_pthread_cond_timedwaitMarton Balint2020-01-25
| | | | | | Timeout error was assumed to be fatal which it is not. Signed-off-by: Marton Balint <cus@passwd.hu>
* avutil/thread: Add pthread_cond_timedwait functionMatt Oliver2020-01-21
| | | | | | v2: fix calculating milisecond times and use SleepConditionVariableSRW. Signed-off-by: Matt Oliver <protogonoi@gmail.com>
* lavc: replace and deprecate the lock managerwm42017-12-26
| | | | | | | Use static mutexes instead of requiring a lock manager. The behavior should be roughly the same before and after this change for API users which did not set the lock manager at all (except that a minor memory leak disappears).
* Merge commit '193b09189004ede4a6998e69192d1a9f63602088'James Almer2017-10-26
|\ | | | | | | | | | | | | * commit '193b09189004ede4a6998e69192d1a9f63602088': thread: Define ff_mutex_* macros as stub functions when threads are disabled Merged-by: James Almer <jamrial@gmail.com>
| * thread: Define ff_mutex_* macros as stub functions when threads are disabledDiego Biurrun2017-04-12
| | | | | | | | Silences a bunch of "statement with no effect" warnings with threads disabled.
* | libavutil/thread.h: Fixed g++ build error when ASSERT_LEVEL is greater than 1Aaron Levinson2017-04-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Purpose: libavutil/thread.h: Fixed g++ build error when ASSERT_LEVEL is greater than 1. This is only relevant when thread.h is included by C++ files. In this case, the relevant code is only defined if HAVE_PTHREADS is defined as 1. Use configure --assert-level=2 to do so. Note: Issue discovered as a result of Coverity build failure. Cause of build failure pinpointed by Hendrik Leppkes. Comments: -- libavutil/thread.h: Altered ASSERT_PTHREAD_NORET definition such that it uses av_make_error_string instead of av_err2str(). av_err2str() uses a "parenthesized type followed by an initializer list", which is apparently not valid C++. This issue started occurring because thread.h is now included by the DeckLink C++ files. The alteration does the equivalent of what av_err2str() does, but instead declares the character buffer as a local variable. Signed-off-by: Marton Balint <cus@passwd.hu>
* | lavu/buffer: drop USE_ATOMICSClément Bœsch2017-03-22
| | | | | | | | | | | | | | USE_ATOMICS is only set if there is no thread implementation enabled, in which case you can't expect any lock mechanism from FFmpeg. This is also conflicting with the incoming use of stdatomic.
* | lavu: add pthread asserts if ASSERT_LEVEL>1Clément Bœsch2016-01-20
| |
* | Merge commit 'c53e796f8b69799b7ad6d28fbab981d37edf1bc9'Hendrik Leppkes2015-10-14
|\| | | | | | | | | | | | | * commit 'c53e796f8b69799b7ad6d28fbab981d37edf1bc9': thread: Provide no-op variants for pthread_once Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * thread: Provide no-op variants for pthread_onceLuca Barbato2015-10-14
| |
| * thread: use "" instead of <> for including the w32pthreads wrapperAnton Khirnov2014-12-14
| | | | | | | | Found-by: Dave Yeo <dave.r.yeo@gmail.com>
* | avutil/buffer: Move USE_ATOMICS to thread.h to avoid it becoming out of sync ↵Michael Niedermayer2014-11-29
| | | | | | | | | | | | with it Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | libavutil/threads.h: correct an include to be localDave Yeo2014-11-29
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | libavutil/thread.h: Support OS/2 threadsDave Yeo2014-11-29
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '2443e522f0059176ff8717c9c753eb6fe7e7bbf1'Michael Niedermayer2014-11-27
|/ | | | | | | * commit '2443e522f0059176ff8717c9c753eb6fe7e7bbf1': lavu: add wrappers for the pthreads mutex API Merged-by: Michael Niedermayer <michaelni@gmx.at>
* lavu: add wrappers for the pthreads mutex APIAnton Khirnov2014-11-27
Also add no-op fallbacks when threading is disabled. This helps keeping the code clean if Libav is compiled for targets without threading. Since we assume that no threads of any kind are used in such configurations, doing nothing is ok by definition. Based on a patch by wm4 <nfxjfg@googlemail.com>.