PIP 5.6.1
Platform-Independent Primitives
Открытые члены | Полный список членов класса
Класс PISemaphore

Счетный семафор, отслеживающий количество доступных единиц ресурса. Подробнее...

#include <pisemaphore.h>

Открытые члены

PISemaphore PISemaphore (int initial=0)
 Создает семафор с "initial" начальными свободными ресурсами.
 
 ~PISemaphore ()
 Деструктор семафора.
 
void acquire (int cnt=1)
 Захватывает cnt единиц ресурса, ожидая появления достаточного количества.
 
bool tryAcquire (int cnt=1)
 Пытается захватить cnt единиц ресурса без ожидания.
 
bool tryAcquire (int cnt, PISystemTime timeout)
 Пытается захватить cnt единиц ресурса в пределах timeout.
 
void release (int cnt=1)
 Освобождает cnt единиц ресурса и пробуждает ожидающие потоки.
 
int available () const
 Возвращает текущее количество доступных единиц ресурса.
 

Подробное описание

Счетный семафор, отслеживающий количество доступных единиц ресурса.

Простой семафор

Краткий обзор

PISemaphore предоставляет межпотоковую защиту критических секций кода с подсчетом ресурсов. Семафор состоит из логического счетчика и методов для его изменения: release(), acquire() and tryAcquire().

Для автоматического захвата-освобождения используйте PISemaphoreLocker.

Использование