Здравствуйте, placement_new, Вы писали:
_>Есть один поток-читатель и n потоков-писателей, которые постояно вызываются через опеределенный промежуток времени.
_>Имется грубо говоря вектор целых чисел, где каждый элемент соответсвует одному писателю. То есть на скольк я понимаю синхронизировать запись не требуется, потому что писатели гарантировано пишут в разную память?
_>Время от времни, я хочу забирать эти числа. Вот как мне блокировать писателей? Если это делать на одном мьютексе, тогда писатели будут блокировать еще друг друга, хотя они вполне могут писать одновремено.
Возьми rw-lock и договорись, что твои писатели — это "читатели" (потому что они друг на друга не влияют), а твой читатель — это "писатель" (потому что он влияет на всех).
Вот и вся сказка
_>Да еще надо учитывать, что бы i-ый писатель на j+1 запуске, не начал заполнять i-ый элемент вектора, пока не закончилась j-ый запуск. ну это можно сделать, если на каждый элемент вектора завести свои мьютекс.
Ну уж каждый писатель-то сам в себе последователен как поток? Или за его псевдонимом прячется толпа литературных негров?

... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>