Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.16;
Скачать: CL | DM;

Вниз

Критическая секция для нескольких нитей.   Найти похожие ветки 

 
iZEN ©   (2003-06-03 09:42) [0]

В VCL есть сласс SyncObjs.TCriticalSection. Есть ли какие-либо ограничения на количество ожидающих нитей, когда одна нить уже заняла критическую секцию? (Скажем: можно ли больше двух ожидающих нитей, и какая из ожидающих нитей в этом случае получит доступ к критической секции после её освобождения?)
Спасибо.


 
Кулюкин Олег ©   (2003-06-03 09:47) [1]

Больше двух - можно, однозначно.
У меня 100 потоков было и все нормально жило.

А первой получит доступ тот поток, который первым позвал TCriticalSection.Enter.


 
Digitman ©   (2003-06-03 10:12) [2]

1. ограничений никаких нет - внутрисист.реализация крит.секции не ведет никаких счетчиков

2. зависит от многих факторов (приоритет потока/процесса - в первую очередь), очередность постановки запроса на захват крит.секции далеко не всегда соответствует очередности собственно захвата

собственно, ключ.момент в реализации запроса на захват секции - инструкция CMPXCHG




Страницы: 1 вся ветка

Текущий архив: 2003.06.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.015 c
1-50278
Tornado
2003-06-04 14:16
2003.06.16
Поолчить разницу между 2-мя датами


14-50527
vitek
2003-06-01 11:41
2003.06.16
Installshield Limit edition


14-50437
_ALEXey_
2003-05-24 08:40
2003.06.16
Криптография :: Алгоритм DES


9-50191
Gayrus
2003-01-09 05:07
2003.06.16
Разве это возможно?!


3-50211
paxer
2003-05-26 11:31
2003.06.16
Переход с Zeos 5.0 на 6.0