Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Delphi > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 23.03.2014, 16:46   #1
UKRtortik
Форумчанин
 
Регистрация: 25.02.2014
Сообщений: 366
Репутация: -14
По умолчанию Почему зависает поток?

Почему при старте зависает поток?

Код:

procedure TNewThread.Execute;
var
StringList: TStringList;
RegExpr: TRegExpr;
HTTPSend: THTTPSend;
begin
HTTPSend := THTTPSend.Create;
StringList := TStringList.Create;
RegExpr := TRegExpr.Create;
RegExpr.Expression := '\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5}';
HTTPSend.HTTPMethod('GET', Site);
StringList.LoadFromStream(HTTPSend.Document);
if RegExpr.Exec(StringList.Text) then
repeat
Site := RegExpr.Match[0];
Synchronize(Reg);
until not RegExpr.ExecNext;
RegExpr.Free;
HTTPSend.Free;
StringList.Free;
end;

procedure TNewThread.Reg;
begin
  Form1.sMemo2.Lines.Add(Site);
end;

UKRtortik вне форума   Ответить с цитированием
Старый 23.03.2014, 16:57   #2
Человек_Борща
Модератор
Заслуженный модератор
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Адрес: Республика Беларусь, г. Минск
Сообщений: 11,387
Репутация: 2669

skype: arhangelsoft
По умолчанию

потому что этот цикл бесконечный:
Код:

if RegExpr.Exec(StringList.Text) then
repeat
Site := RegExpr.Match[0];
Synchronize(Reg);
until not RegExpr.ExecNext;

Человек_Борща вне форума   Ответить с цитированием
Старый 23.03.2014, 17:00   #3
UKRtortik
Форумчанин
 
Регистрация: 25.02.2014
Сообщений: 366
Репутация: -14
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
потому что этот цикл бесконечный:
Код:

if RegExpr.Exec(StringList.Text) then
repeat
Site := RegExpr.Match[0];
Synchronize(Reg);
until not RegExpr.ExecNext;

А как будет правильно?
UKRtortik вне форума   Ответить с цитированием
Старый 23.03.2014, 17:58   #4
eval
паяю
 
Регистрация: 29.08.2012
Сообщений: 4,030
Репутация: 422
По умолчанию

а зачем тут TStringList? абы напихать побольше, а зачем почему ...
eval вне форума   Ответить с цитированием
Старый 23.03.2014, 21:16   #5
UKRtortik
Форумчанин
 
Регистрация: 25.02.2014
Сообщений: 366
Репутация: -14
По умолчанию

Человек_Борща, помогите исправить ошибку, не как не пойму что не так...
UKRtortik вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Почему у меня зависает программа при работе? VASwko Общие вопросы C/C++ 12 15.05.2013 14:18
почему зависает программа на Delphi с таймером Zalord Помощь студентам 2 21.05.2012 23:13
Класс запускает поток, который заполняет этот класс. Обмен класс <=> поток. Человек_Борща Общие вопросы Delphi 8 27.02.2012 23:24
Поток. Не получается создать поток. Выдает ошибки при запуске bigory Общие вопросы по Java, Java SE, Kotlin 3 23.09.2010 00:40
Почему не вводит в поток??? girkoff Общие вопросы C/C++ 1 07.11.2009 15:27


22:02.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru