![]() |
|
Модераторы: Snowy, MetalFan, bems, Poseidon |
![]()
|
|
| drdead84 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 5.11.2014 Репутация: нет Всего: нет |
Доброе утро
нужна помощь есть программа - кратко - сдирает 6 страниц с сайта(записаны адреса в form1.memo3.Lines.Strings), парсит данные с помощью регулярных выражений и записывает в стринглист процедура нагружает проц, поэтому хотелось бы в потоке сделать вышло вот что - при первом запуске все ок. все данные нормально получаются. второй и следующие запуски - выдает ошибку что неизвестный протокол, то есть - не может получить доступ к адресам из memo3. в то же время при тестировании без потока - данные каждый раз нормально снимаются. есть подозрение что поток тупит и во второй раз не получает урл из мемо. кто может пинком указать правильное направление? в потоках не очень силен - поэтому создаю тему здесь. delphi xe2
Это сообщение отредактировал(а) drdead84 - 6.12.2014, 07:49 |
|||
|
||||
| Illusion Dolphin |
|
||||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1198 Регистрация: 3.5.2003 Репутация: 5 Всего: 63 |
Нельзя из потока вызывать визуальные компоненты без использования Synchronize
А вы его нигде не уничтожили - утечка
http должен быть объявлен в потоке (этого у вас не видно), туда же RegExp Добавлено через 48 секунд И вам сюда http://forum.vingrad.ru/forum/topic-60076.html -------------------- В мире всего две бесконечности: вселенная и человеческая глупость... На счёт вселенной я не уверен. Шифрование и организация фотографий - Photo Database 4.5 |
||||||
|
|||||||
| drdead84 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 5.11.2014 Репутация: нет Всего: нет |
спасибо за ответ Illusion Dolphin
вопрос вот в чем - в предыдущей версии моей проги - могу скинуть - там куча целая процедур выполняется в потоке(код внизу привел) при этом там каждая процедура обращалась вольно к любому визуальному компоненту. и запуск ее - вообще чудо. я ее нигде не уничтожаю тоже. а здесь - как прокляли это мемо3. сперва норм обращается - потом клинит поток - и он в упор не видит его то ли инди как всегда кривая. то ли руки кривоватые до потоков. ту статью о потоках читал когда только в них начал разбиратся. пример
|
|||
|
||||
| Illusion Dolphin |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1198 Регистрация: 3.5.2003 Репутация: 5 Всего: 63 |
Читайте ещё раз, т.к. первый раз вы ничего из неё не поняли. При многопоточности некоторые вещи могут иногда работать, а иногда падать и зависать. Ещё почитайте про оформление кода - лишним не будет. Это сообщение отредактировал(а) Illusion Dolphin - 6.12.2014, 14:57 -------------------- В мире всего две бесконечности: вселенная и человеческая глупость... На счёт вселенной я не уверен. Шифрование и организация фотографий - Photo Database 4.5 |
|||
|
||||
| drdead84 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 5.11.2014 Репутация: нет Всего: нет |
Illusion Dolphin
спасибо поместил в protected каждого потока процедуры сменил ресурс, откуда тянутся данные переработал все полностью - все процедуры ускорение - примерно процентов 40% от предыдущего кода спасибо за пинок и пинок в сторону настойчивости вдумчивый просмотр указанной темы помог! |
|||
|
||||
![]()
|
| Правила форума "Delphi: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |