Вниз
Скачать: 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
3-75516
Alex22
2001-12-15 11:02
2002.01.24
Базы данных


3-75474
Kaster
2001-12-15 16:21
2002.01.24
Найденная запись стала первой в DBGrid е!


4-75710
manumba
2001-09-24 21:50
2002.01.24
SetWindowsHookEx (WH_Keyboard....) - срабатывает два раза(вместо одного)....


4-75718
Serega__2
2001-11-23 15:37
2002.01.24
Синхронизация ScrollBar`ов у двух TCheckListBox


1-75587
Foy
2002-01-06 14:43
2002.01.24
Сохранение и вызов файла




   Наверх