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

Вниз

Вопрос по дополнительным потокам!!!   Найти похожие ветки 

 
Андрей Пл   (2008-03-19 11:37) [0]

У меня такая ситуация в программе есть дополнительный поток который постоянно с периодичностью что то пишет в файл.
Так вот когда я завершаю программу (так же при этом вызываю метод Terminate доп.потока) то дополнительный поток иногда не успевает завершить последнюю итерацию цикла и также соответственно  операцию записи в файл и получается что в файле оказывается только часть данных.
Вопрос как мне завершить работу основной программы что бы при этом гарантировано завершил свою работу доп.поток???

Код доп.потока:

 while not Terminated do
 begin
   sleep(varSleep);

   U:= pSmInt^;
   .  .  .  .  .  .  .
   Regim:= pByte^;

   Writeln(F,DateToStr(Date):10, TimeToStr(Time):15, Uakb:10, I:10, T:10, Uin:10, U:10, Regim:10);
   beep;
 end;


 
grisme   (2008-03-19 11:43) [1]

WaitForSingleObject?


 
ЦУП ©   (2008-03-19 11:59) [2]


> Андрей Пл   (19.03.08 11:37) 


thread.WaitFor


 
clickmaker ©   (2008-03-19 12:32) [3]


> метод Terminate доп.потока

он всего лишь взводит переменую Terminated.
Вот если TerminateThread, то - другое дело


 
Андрей Пл   (2008-03-19 13:43) [4]

Всем спасибо

thread.WaitFor -
помогло отцу русское демократии :)



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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
15-1226589788
@!!ex
2008-11-13 18:23
2009.01.11
Вышел Red Alert 3.


2-1227794000
oracled
2008-11-27 16:53
2009.01.11
Строка больше 255 символов, как?


15-1225632961
Кто б сомневался
2008-11-02 16:36
2009.01.11
Электронные книги - будущая замена бумажных книг?


9-1176815377
ElectriC
2007-04-17 17:09
2009.01.11
Прозрачность CD3DFont текста


2-1227819867
demon
2008-11-28 00:04
2009.01.11
Как сохранить в ini-файл значение HBRUSH ?