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

Вниз

Как убивать поток по истечению какогото времени после его старта   Найти похожие ветки 

 
noname:))   (2005-03-09 17:37) [0]

Создаётся много потоков(поток выполняет пинг и если он удачен то
ищет розшареные папки). Как убить все потоки по нажатию кнопки например?
И ещё. Как убивать поток по истечению какогото времени после его старта.
procedure tr.Execute;
..var z:integer;
begin
inherited;
WaitForSingleObject(Semaphore, INFINITE);
inc(flag);
//z:=GetTickCount();//?????????
scan(hhh,sport,sname,sshare); // Например после запуска этой процедуры
//ждать 10 секунд а потом убить поток если он ещё не завершон
if terminated then exit;
//if GetTickCount() = z + 2000 then begin terminate; end;
ReleaseSemaphore(Semaphore, 1, NIL);
dec(flag);
if flag = 0 then  begin
Form1.StatusBar1.Panels.Items[0].Text := "Сканирование завершено!!!:)";
end;
synchronize(update);
end;
И ещё:))) Есть ли лучшая альтернатива Semaphore. Я слышал что критические
секци но как ими использовать незнаю...
Зарание спасибо!


 
Fay ©   (2005-03-09 18:19) [1]

Events



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

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

Наверх




Память: 0.46 MB
Время: 0.06 c
14-1109236007
dimonf
2005-02-24 12:06
2005.03.20
Работа в Москве от 1100$


3-1108993428
den_777
2005-02-21 16:43
2005.03.20
Как заставить INTERBASE изменить план


1-1109935612
santa
2005-03-04 14:26
2005.03.20
шифрование текстовых файлов


3-1108621131
Sour
2005-02-17 09:18
2005.03.20
Можно ли в условии запроса использовать хранимую процедуру


1-1109767666
Васек1
2005-03-02 15:47
2005.03.20
Значение по умолчанию в поле fkCalculated