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

Вниз

помогите разобраться с Critical Sections   Найти похожие ветки 

 
Dust ©   (2005-08-04 13:29) [0]

народ, хелп
InitializeCriticalSection(lpCrtlSctn);
EnterCriticalSection(lpCrtlSctn);
после этих строк все остальные потоки должные приостановить свою работу до
LeaveCriticalSection(lpCrtlSctn); ???????????????????????

может быть я не правильно понимаю работу критических секций?...
объясните пожалуйста


 
Eraser ©   (2005-08-04 13:33) [1]

Dust ©   (04.08.05 13:29)

И какой вопрос?


 
Alexander Panov ©   (2005-08-04 13:39) [2]

Dust ©   (04.08.05 13:29)
InitializeCriticalSection(lpCrtlSctn);
EnterCriticalSection(lpCrtlSctn);
после этих строк все остальные потоки должные приостановить свою работу до
LeaveCriticalSection(lpCrtlSctn); ???????????????????????


Не так.

Где-то в программе:
  InitializeCriticalSection(lpCrtlSctn);

После этого каждый поток, которому нужно выполнить код между

1*
EnterCriticalSection(lpCrtlSctn);
и
LeaveCriticalSection(lpCrtlSctn);

должен знать этот lpCrtlSctn.

При попытке выполнения кода 1* одновременно несколькими потоками система разрешит выполнять код только одному потоку, остальные переведет в состояние ожидания.


 
Digitman ©   (2005-08-04 13:45) [3]


> Dust ©   (04.08.05 13:29)  


т.о. (см. Alexander Panov ©   (04.08.05 13:39) [2]), проект д.б. организован так чтобы переменная lpCrtlSctn была глобальной - обладала достаточной видимостью для ВСЕХ юнитов, в которых описаны/реализованы поточные ф-ции, заинтересованные в использовании значения этой переменной в вызовах Enter/LeaveCriticalSection



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

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

Наверх




Память: 0.47 MB
Время: 0.023 c
3-1121084038
Андрей Жук
2005-07-11 16:13
2005.08.21
Иерархический запрос в Oracle


14-1122405197
Виталька2005
2005-07-26 23:13
2005.08.21
Запрос с выборкой по дате


4-1116520464
kat
2005-05-19 20:34
2005.08.21
Панель Инструментов


4-1119592168
NikNet
2005-06-24 09:49
2005.08.21
Как старшее и младшое слово сделать DWORD? на DELPHI.


4-1117836874
Вадим Станкевич
2005-06-04 02:14
2005.08.21
Как отловить открытие/закрытие дверцы CD-ROM?