Добрый день. Есть модуль(упрощенно):
Код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | unit uHtmlPageLoader;
interface
uses StrUtils,SysUtils, idHTTP,IdSSL, IdSSLOpenSSL,Dialogs,
IdCompressorZLib,Classes,Windows;
procedure HtmlPageLoader(AUrl,Search: string ; Trth1,Trth2: integer );
implementation
uses uMainUnit,ShellAPI;
procedure HtmlPageLoader(AUrl,Search: string ; Trth1,Trth2: integer );
var
HtmlPage,
ConvertHtmlPage,
UrlsOut
: string ;
Rating: integer ;
begin
HtmlPage:=DelTegs(LoadHtmlPage(AUrl));
UrlsOut:=GetUrls(HtmlPage,AUrl,Search,Trth2);
ConvertHtmlPage:= DelTrash(TegExch2(TegExch1(HtmlPage)), AUrl,Search,Trth1);
Rating:=Rate(ConvertHtmlPage,Search);
if (Rating > 5 ) then
begin
gRate:=Rating;
gUrl:=AUrl;
gPageUrls:=UrlsOut;
end
else Exit;
end ;
|
Если бы это был объект то у него могли бы быть события. но делать класс пока еще рано
Вопрос: как вообще можно передать сигнал в другую процедуру Restore о том что пора обработать данные. можно конечно
таймер приделать, но нежелательно. В самой процедуре HtmlPageLoader вызывать код процедуры Restore тоже нельзя, этот
загрузчик будет запускаться в потоке(несколько HtmlPageLoader одновременно) и оне будут асинхронно передавать результаты в
в процедуру Restore для обработки.