1e41f4b71Sopenharmony_ci# condition_variable.h
2e41f4b71Sopenharmony_ci
3e41f4b71Sopenharmony_ci
4e41f4b71Sopenharmony_ci## Overview
5e41f4b71Sopenharmony_ci
6e41f4b71Sopenharmony_ciThe **condition_variable.h** file declares the condition variable interfaces in C.
7e41f4b71Sopenharmony_ci
8e41f4b71Sopenharmony_ci**Since**: 10
9e41f4b71Sopenharmony_ci
10e41f4b71Sopenharmony_ci**Related module**: [FFRT](_f_f_r_t.md)
11e41f4b71Sopenharmony_ci
12e41f4b71Sopenharmony_ci
13e41f4b71Sopenharmony_ci## Summary
14e41f4b71Sopenharmony_ci
15e41f4b71Sopenharmony_ci
16e41f4b71Sopenharmony_ci### Functions
17e41f4b71Sopenharmony_ci
18e41f4b71Sopenharmony_ci| Name| Description| 
19e41f4b71Sopenharmony_ci| -------- | -------- |
20e41f4b71Sopenharmony_ci| FFRT_C_API int [ffrt_cond_init](_f_f_r_t.md#ffrt_cond_init) ([ffrt_cond_t](ffrt__cond__t.md)\* cond, const [ffrt_condattr_t](ffrt__condattr__t.md)\* attr) | Initializes a condition variable. | 
21e41f4b71Sopenharmony_ci| FFRT_C_API int [ffrt_cond_signal](_f_f_r_t.md#ffrt_cond_signal) ([ffrt_cond_t](ffrt__cond__t.md)\* cond) | Unblocks at least one of the threads that are blocked on a condition variable. | 
22e41f4b71Sopenharmony_ci| FFRT_C_API int [ffrt_cond_broadcast](_f_f_r_t.md#ffrt_cond_broadcast) ([ffrt_cond_t](ffrt__cond__t.md)\* cond) | Unblocks all threads currently blocked on a condition variable. | 
23e41f4b71Sopenharmony_ci| FFRT_C_API int [ffrt_cond_wait](_f_f_r_t.md#ffrt_cond_wait) ([ffrt_cond_t](ffrt__cond__t.md)\* cond, [ffrt_mutex_t](ffrt__mutex__t.md)\* mutex) | Blocks the calling thread on a condition variable. | 
24e41f4b71Sopenharmony_ci| FFRT_C_API int [ffrt_cond_timedwait](_f_f_r_t.md#ffrt_cond_timedwait) ([ffrt_cond_t](ffrt__cond__t.md)\* cond, [ffrt_mutex_t](ffrt__mutex__t.md)\* mutex, const struct timespec\* time_point) | Blocks the calling thread on a condition variable for a given duration. | 
25e41f4b71Sopenharmony_ci| FFRT_C_API int [ffrt_cond_destroy](_f_f_r_t.md#ffrt_cond_destroy) ([ffrt_cond_t](ffrt__cond__t.md)\* cond) | Destroys a condition variable. | 
26