Функция pthread_cond_init() инициализирует переменную состояния:
const pthread_condattr_t *cattr);
Статические переменные состояния могут инициализироваться непосредственно значениями по умолчанию с помощью макроса PTHREAD_COND_INITIALIZER. Несколько потоков не должны одновременно инициализировать или повторно инициализировать ту же самую переменную состояния. Если переменная состояния повторно инициализируется или удаляется, приложение должно убедиться, что эта переменная состояния больше не используется.
pthread_cond_init() возвращает 0 после успешного завершения. Любое другое значение указывает, что произошла ошибка. Пример использования функции:
pthread_cond_t cv;
pthread_condattr_t cattr;
int ret;
/* инициализация значениями по умолчанию */
ret = pthread_cond_init(&cv, NULL);
/* инициализация определенными значениями */
ret = pthread_cond_init(&cv, &cattr);