| 51 | } |
| 52 | |
| 53 | void ff_thread_progress_report(ThreadProgress *pro, int n) |
| 54 | { |
| 55 | if (atomic_load_explicit(&pro->progress, memory_order_relaxed) >= n) |
| 56 | return; |
| 57 | |
| 58 | ff_mutex_lock(&pro->progress_mutex); |
| 59 | atomic_store_explicit(&pro->progress, n, memory_order_release); |
| 60 | ff_cond_broadcast(&pro->progress_cond); |
| 61 | ff_mutex_unlock(&pro->progress_mutex); |
| 62 | } |
| 63 | |
| 64 | void ff_thread_progress_await(const ThreadProgress *pro_c, int n) |
| 65 | { |
no test coverage detected