Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.01.24;
Скачать: 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 вся ветка

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

Наверх




Память: 0.46 MB
Время: 0.01 c
1-75579
Romul
2002-01-06 13:27
2002.01.24
MessageDlg со звуком


1-75626
Eraser
2002-01-03 15:40
2002.01.24
Снова я и снова торможу


1-75575
Vitalik
2002-01-06 21:03
2002.01.24
чтение строки из файла посредством TMemoryStream


4-75713
Anderius
2001-11-14 21:25
2002.01.24
Зупуск программы в BackGround режиме


1-75585
RealGrey
2002-01-04 15:31
2002.01.24
Как записать в TDBGrid данные, но с Source ом их не связывать