|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
23.07.2010, 19:59 | #1 |
Пользователь
Регистрация: 24.10.2009
Сообщений: 48
|
Программа подвисает
Подскажите..
К примеру есть такая процедура: Код:
Можно ли как то сделать так, что бы эта процедура выполняналсь, а в то время мог спокойно просматривать собержимое стринггрид и нажимать другие кнопки? |
23.07.2010, 20:12 | #2 |
Форумчанин
Регистрация: 01.09.2009
Сообщений: 197
|
Возможно проблема решится добавлением Application.ProcessMessages(); в конец цикла. Если нет - изучайте как работают потоки (Thread) в дельфях.
|
23.07.2010, 20:19 | #3 |
Просто хороший
Форумчанин
Регистрация: 26.03.2010
Сообщений: 562
|
Ага, потоки, потоки нужно смотреть у меня такая же ерунда была (так называемое бесконечное окно)
Помог, нажми весы слева
|
23.07.2010, 20:21 | #4 |
Пользователь
Регистрация: 24.10.2009
Сообщений: 48
|
Спасибо! Именно то, что надо
|
23.07.2010, 20:23 | #5 |
Старожил
Регистрация: 26.04.2008
Сообщений: 2,689
|
Ну накой они вам эти потоки?
Код:
|
23.07.2010, 20:36 | #6 |
Пользователь
Регистрация: 24.10.2009
Сообщений: 48
|
Для того цикла, что я в примере указал подходит, а для программы, которую я пишу не очень.В примере шаг цикла выполняется очень быстро, по этому все работает хорошо Моя же программа сканирует открытые порты с помошью tcpclient. Время выполнения процедуры tcpclient.open, на сколько я понимаю, зависит от того, как быстро удаленный адресс откликнится, либо от таймаута(если нет никакой службы на данном порте). Время отклика у меня колебалось от меньше секунды до нескольких. И в это время программа висит..
Я так понимаю мне лучше поучить Thread?)) |
23.07.2010, 21:00 | #7 |
Форумчанин
Регистрация: 01.09.2009
Сообщений: 197
|
Да, особенно если хотите сделать сканер многопоточным.
|
23.07.2010, 21:44 | #8 |
Студент, не
Старожил
Регистрация: 29.01.2009
Сообщений: 2,067
|
Код:
I am the First of Cyber Evolution...
I am the First to Program your Future... |
23.07.2010, 21:46 | #9 |
Пользователь
Регистрация: 24.10.2009
Сообщений: 48
|
Вот написал программу с двумя потоками. Как тут сделать, что бы форма не висла?
Код:
|
23.07.2010, 21:47 | #10 |
Пользователь
Регистрация: 24.10.2009
Сообщений: 48
|
DomiNick
Цикл там написан для примера, что бы нагрузить программу п.с. Что за antifrize и где взять? Последний раз редактировалось prod87; 23.07.2010 в 21:54. |
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
приложение подвисает, при попытке обновить шрифты | AnTe | Общие вопросы Delphi | 2 | 07.12.2009 11:36 |
Много SQL запросов что компьютер подвисает!! | Football_lady | SQL, базы данных | 4 | 28.11.2009 13:05 |
Программа открыается если есть другая программа. | bookkc | Паскаль, Turbo Pascal, PascalABC.NET | 12 | 14.10.2009 20:09 |
При компилировании (F9) подвисает Delphi | Polotenchik | Общие вопросы Delphi | 3 | 24.06.2009 13:44 |