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

Вниз

работа с потоками   Найти похожие ветки 

 
Сергей М. ©   (2007-08-08 10:02) [40]

Я тоже так и не понял, к чему здесь доп.потоки.

Navgiate работает асинхронно. Можно прямо в основном потоке запустить нужное кол-во браузеров, передав им для загрузки нужные URL и установив единый обработчик OnDocumentComplete для всех экз-ров IE. Тогда браузеры последовательно отрапортуют о результатах загрузки вызовами этого обработчика. Можно сделать тоже самое и в одном-единственном доп.потоке, но зачем плодить другие "подключающиеся" доп.потоки - вот это совершенно непонятно.


 
Сергей М. ©   (2007-08-08 10:04) [41]


> Потому что подключение к уже запущенному браузеру ведется
> из другого потока


Да нафих к нему подключаться-то ? Ты ведь и так уже к нему подключилась, создав объект TInternetExplorer, так зачем же после вызова навиг.метода от него отключаться, если прямо здесь же можно получить результат этой навигации ?


 
Ekate ©   (2007-08-08 10:16) [42]

Суть в следующем, выполняется поток (поток1), который ожидает определенного события.При его наступлении запускается браузер с определенной страницей (в зависимости от события).При запуске браузера включаем другой поток(поток2) (дабы не блокировать выполнение первого), который выполняет ряд действий с браузером.При получении нового события первым потоком загружается новая страница и перезапускается поток 2 с новыми параметрами.

> Да нафих к нему подключаться-то ?

Согласна, можно создавать объект браузера сразу в дочернем потоке (поток 2), и передавать первоначальную адресную строку в качестве параметра.


 
Сергей М. ©   (2007-08-08 10:20) [43]


> При запуске браузера включаем другой поток(поток2) (дабы
> не блокировать выполнение первого), который выполняет ряд
> действий с браузером


Что это за "действия" ?

Судя по твоему коду, все эти "действия" вполне могут быть выполнены и в потоке 1, практически никак не влияя на время его реакции на ожидаемое им событие.


 
Ekate ©   (2007-08-08 10:25) [44]

все просто, сканируем адрес активной страницы, формируем строку (состоит из ряда параметров первого потока и URL), помещаем данную строку в файл, если ее там нет.И так делаем до тех пор, пока один из параметров первого потока не изменится.


 
Сергей М. ©   (2007-08-08 10:32) [45]


> сканируем адрес активной страницы


Что ж это за сканирование такое, что оно может ощутимо блокировать работу потока ? И почему его нельзя выполнить прямо в потоке 1 по завершению навигации ?


> формируем строку (состоит из ряда параметров первого потока
> и URL)


Это тоже практически мгновенное действие.
Резона в его выносе в другой доп.поток пока не вижу.


> помещаем данную строку в файл, если ее там нет


А вот это операция явно не мгновенная, ее-то как раз и есть смысл вынести в поток 2, возможно вместе с операцией формирования этой строки.


 
Ekate ©   (2007-08-08 10:37) [46]


> Что ж это за сканирование такое, что оно может ощутимо блокировать
> работу потока ?

дело в том, что пользователь может посещать различные web ресурсы, поэтому данное сканирование думаю нужно проводить в потоке.


 
Сергей М. ©   (2007-08-08 10:41) [47]


> дело в том, что пользователь может посещать различные web
> ресурсы


Опять непонятно ..

Зачем же ты запускаешь браузеры программно в потоке 1, если юзер в состоянии сам "ручками" запустить браузер и осуществлять навигацию интерактивно ?


 
Сергей М. ©   (2007-08-08 10:45) [48]


> Ekate ©   (08.08.07 10:37) [46]


Ты бы обрисовала идею в целом.

Я так понял, что твоя программа призвана осуществлять некие "фискальные" функции, контролируя и протоколируя ссылки на ресурсы, посещенные юзером ..


 
cerber   (2007-08-08 23:27) [49]

ставь снифер на 80 порт и не мешай жить ИЕ.



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

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

Наверх




Память: 0.56 MB
Время: 0.025 c
15-1190275337
Ega23
2007-09-20 12:02
2007.10.21
Как отказаться от Vista при покупке ноута?


2-1190789260
yuray
2007-09-26 10:47
2007.10.21
Кто создал экземпляр класса?


3-1181655989
Лёля
2007-06-12 17:46
2007.10.21
Midas Insufficient memory for this operation


2-1190813292
Kolan
2007-09-26 17:28
2007.10.21
Научите как сделать ToolBar как в D7


6-1171790033
santey
2007-02-18 12:13
2007.10.21
Как установить IP адрес