Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > lock ограничение не в один поток


Автор: DenWPF 8.4.2010, 11:16
lock(obj) - даёт доступ только для одного потока.
а вот мне надо к примеру 3 потока и не больше, как это организовать?

Автор: mrbrooks 8.4.2010, 11:21


Цитата(DenWPF @  8.4.2010,  12:16 Найти цитируемый пост)
lock(obj) - даёт доступ только для одного потока.

это же в целях синхронизации.

Цитата(DenWPF @  8.4.2010,  12:16 Найти цитируемый пост)
а вот мне надо к примеру 3 потока и не больше, как это организовать? 

в смысле - что бы три потока одновременно имели доступ к ресурсу?  smile 

Для чтения или записи?

Автор: DenWPF 8.4.2010, 11:26
просто для захода в эту функцию 
lock(obj)
{
вот тут код, и мне надо что бы в него могли зайти не больше 3 потоков одновременно.
}

Автор: KelTron 8.4.2010, 11:57
Используй http://ru.wikipedia.org/wiki/Семафор_(информатика)

Автор: DenWPF 8.4.2010, 12:37
готовых семафоров нет да ещё и на C# ?

суть то я понимаю но как понять что поток пришел?

Автор: KelTron 8.4.2010, 12:49
System.Threading.Semaphore, в инете куча примеров.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)