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

Вниз

Остановить выполнение пророги в задонном месте до опред. события?   Найти похожие ветки 

 
Андрей Пл   (2010-01-05 10:38) [0]

Здравствуйте. (давно не программировал в Делфи прошу подсказать мне!)
У меня есть бесконечный цикл в дополнительном потоке
как мне остановить дальнейшее выполнение программы в заданном месте до наступления определенного события и как только оно наступило продолжить.
Поясню задачу:
У меня есть бесконечный цикл в дополнительном потоке и есть набор устройств которые я последовательно должен опрашивать(через сом порт) так вот после того как я послал запрос к устройству я должен дождаться когда оно мне ответит как только ответил обработать ответ и дальше продолжить опрос следующего устройства
т.е. все выглядит приблизительно так:

 while not Terminated do
 begin
   for i:=1 to N do
   begin
     .......
     послали запрос к  устройству номер i
     как то тут остановить выполнение цикла
     до наступления события- ответ из устройства ?????

     продолжить выполнение с обработкой ответа от устройства номер i
     .......

   end;                                    

 end;


 
Ганя   (2010-01-05 11:20) [1]

см. CreateEvent, SetEvent, ResetEvent в MSDN


 
Юрий Зотов ©   (2010-01-05 13:12) [2]

> Андрей Пл   (05.01.10 10:38)

См. в MSDN: CreateFile, WaitComEvent, ReadFile, CloseFile.

А также раздел Communications Functions и пример Monitoring Communications Events.


 
Anatoly Podgoretsky ©   (2010-01-05 15:19) [3]

> Андрей Пл  (05.01.2010 10:38:00)  [0]

Какой смешной вопрос, конечно же Terminated := True


 
Андрей Пл   (2010-01-05 17:45) [4]


> Anatoly Podgoretsky ©   (05.01.10 15:19) [3]
>   Какой смешной вопрос, конечно же Terminated := True


неее)) это мне весь поток закроет.. это я еще шарю...)


 
Anatoly Podgoretsky ©   (2010-01-05 17:57) [5]

Ну тогда Break, выйдешь из цикла for,  а не цикла while. Вопрос надо ставить более строго, что бы потом не дезавуировать первое заявление, не заставлять гадать из какого цикла ты именно хочешь выйти.



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

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

Наверх




Память: 0.48 MB
Время: 0.011 c
15-1261387411
Юрий Зотов
2009-12-21 12:23
2010.03.07
Регулярные выражения


2-1262073913
oleg1963
2009-12-29 11:05
2010.03.07
Добавить компонент в класс. Получилось.


10-1164879867
salexn
2006-11-30 12:44
2010.03.07
Регистрация сервера


2-1261998265
ZXZ_RUS
2009-12-28 14:04
2010.03.07
Добавление компанента по нажатию на баттон!


15-1261465203
MonoLife
2009-12-22 10:00
2010.03.07
Кто-нибудь пользуется yahoo почтой?