День добрый. Есть некоторый разделяемый ресурс с операциями чтения/записи. Известно что операций чтения гораздо больше, чем записи. Как организовать доступ к такому объекту? Понятно, что можно просто использовать семафор, и блочить на каждый поток ресурс, вне зависимости чтение это или запись.
Ответ
Может, вам нужен Readers–writer lock?
Множество потоков могут читать
Только один поток может писать
Функции pthread:
pthread_rwlock_init()
pthread_rwlock_rdlock()
pthread_rwlock_wrlock()
pthread_rwlock_unlock()
Winapi - SRW Locks
Комментариев нет:
Отправить комментарий