Вниз
Скачать: CL | DM;

Потоки. Крит. секции.   Найти похожие ветки 

 
mart ©   (2002-01-06 13:08) [0]

Всем привет! В программе создается поток и некоторый код
защищен критической секцией (изменение некой переменной).
Та-же переменная изменяется в основном потоке и тоже защищена крит. секцией. Вопрос: Молжно ли использовать крит. секцию в основном потоке и, если нет, то как правильно сделать?


 
Макс Черных ©   (2002-01-06 14:15) [1]

>Молжно ли использовать крит. секцию в основном потоке
Можно. Надо только помнить, что:
Critical Section должна существовать при обращении
к ней из любого потока. Поэтому ее обычно объявляют как
глобальную переменную в основном потоке, а создают
и уничтожают в initialization и finalization основного потока.
При попытке входа в Critical Section, если она занята, то
основной поток встанет, соответственно интерфейс программы
замерзнет. Следовательно, необходимо чтобы при захвате
Critical Section другим потоком время захвата было небольшим,
а так же чтобы выход из Critical Section гарантированно выполнялся даже при возникновении exception.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.006 c
7-75693
BoBaH
2001-10-11 13:20
2002.01.24
TRegistry


1-75609
Vovchik
2002-01-07 20:27
2002.01.24
Цвет итемов в TListView


1-75589
Vacheslav
2002-01-07 13:21
2002.01.24
Как обработать


1-75622
Дмитрий А.
2002-01-04 17:34
2002.01.24
TShellListViev


3-75520
NewComer
2001-12-19 16:46
2002.01.24
Ничего не понимю...




   Наверх