> For the complete documentation index, see [llms.txt](https://dimitar-minchev.gitbook.io/linux-system-programming/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://dimitar-minchev.gitbook.io/linux-system-programming/09_threads_sync/05_sync_mechanisms.md).

# Механизми за синхронизация

Библиотеката с нишки предоставя три механизма за синхронизация:

* **Мютекси** (*Термин на Английски език: Mutexes*). Взаимно заключване, блокиране на достъпа до променливи от други нишки. Това налага изключителен достъп от нишка до променлива или набор от променливи.
* **Съединения** (*Термин на Английски език: Joins*). Нишката изчаква, докато другите нишки приключат.
* **Условни променливи** (*Термин на Английски език: Condition Variables*). Докато мютексите прилагат синхронизация, като контролират достъпа на нишка до данни, условните променливи позволяват на нишките да се синхронизират въз основа на действителната стойност на данните.
