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

Потоки. Waitfor.   Найти похожие ветки 

 
dms_main ©   (2004-10-26 19:34) [0]

Уважаемые мастера, помогите решить проблему!
Запускаю несколько одинаковых потоков с разными параметрами,
Программе нужно ожидать завершения всех этих потоков.
ставлю  waitfor, но он срабатывает только на завершение первого потока.
Что делать???? :-(


 
clickmaker ©   (2004-10-26 19:47) [1]

WaitForMultipleObjects


 
dms_main ©   (2004-10-27 01:50) [2]

а что есть PWOHandleArray и как с ним работать?


 
Digitman ©   (2004-10-27 08:12) [3]


> dms_main ©   (27.10.04 01:50) [2]


это обыкновенный массив элементов типа THandle
создай такой массив, заполни его значениями свойств Handle каждого из трэдов и передай указатель на массив 2-м параметром в эту ф-цию, а 1-м параметром передай число элементов этого массива


 
Digitman ©   (2004-10-27 08:24) [4]


> dms_main ©   (27.10.04 01:50) [2]


можно поступить проще

организуй глобальную переменную-счетчик трэдов, защити обращение к ней крит.секцией

перед стартом самого первого трэда обнули переменную

каждый стартуемый далее доп.трэд первым делом инкрементирует значение этой переменной, а перед завершением декрементирует

осн.трэд, ожидающий завершения всех стартованных им доп.трэдов, просто ждет в цикле, пока переменная вновь не примет значение 0, не забывая при этом (если нужно) вызывать при каждой итерации метод Application.Processmessages;



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

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



Память: 0.45 MB
Время: 0.021 c
3-1100095157
Lika
2004-11-10 16:59
2004.12.12
SQL запрос


14-1101105848
ИМХО
2004-11-22 09:44
2004.12.12
Слово об эмиграции


3-1099996664
sergeii
2004-11-09 13:37
2004.12.12
Филтрация


1-1101322195
Леонид
2004-11-24 21:49
2004.12.12
Delphi8


14-1101131287
sniknik
2004-11-22 16:48
2004.12.12
жизнеописания умученных сиадминов ;о))




   Наверх