![]() |
PIP 5.5.3
Platform-Independent Primitives
|
Простой мьютекс Подробнее...
#include <pimutex.h>
Открытые члены | |
| PIMutex () | |
| Создает незаблокированный мьютекс | |
| ~PIMutex () | |
| Деструктор мьютекса | |
| void | lock () |
| Блокирует мьютекс Подробнее... | |
| void | unlock () |
| Разблокирует мьютекс Подробнее... | |
| bool | tryLock () |
| Пробует заблокировать мьютекс | |
Простой мьютекс
PIMutex предоставляет межпотоковую защиту критических секций кода. Использование мьютекса гарантирует выполнение секции только один потоком. Мьютекс состоит из логического состояния и методов для его изменения: lock(), unlock() and tryLock().
Для автоматической блокировки-разблокировки используйте PIMutexLocker.
Части кода, которые должны быть выполнены только одним потоком в любой момент времени должны начинаться с вызова lock() и заканчиваться вызовом unlock().
| void PIMutex::lock | ( | ) |
Блокирует мьютекс
Если мьютекс свободен, то блокирует его и возвращает управление немедленно. Если мьютекс заблокирован, то ожидает разблокировки, затем блокирует и возвращает управление
| void PIMutex::unlock | ( | ) |
Разблокирует мьютекс
В любом случае возвращает управление немедленно