Вверх ↑
Этот топик читают: Гость
Ответов: 876
Рейтинг: 101
#1: 2009-01-24 16:55:04 ЛС | профиль | цитата
Есть список.

www.silka1.com
www.silka2.com
www.silka3.com

итд и количество ссылок каждый раз разный

нужно чтобы он прошел по всем ссылка и обработал текст сайта, у меня получается что он за секунду по все ссылкам бегает и прога зависает
как сделать что бы он ждал пока обработка ссылок завершиться
карма: 1

0
Ответов: 1161
Рейтинг: 160
#2: 2009-01-24 17:01:19 ЛС | профиль | цитата
Используй точку doProcessMessages у

Add(Application,2014180,105,112)
{
}
или отдельный поток запускай
карма: 0

0
Ответов: 3851
Рейтинг: 159
#3: 2009-01-24 17:29:25 ЛС | профиль | цитата
запоминай номер строки и пользуйся ArrayRW а не ArrayEnum..
------------ Дoбавленo:

также можно попробовать запускать обработчик в динамическом мульте (совместно с ArrayEnum конечно)..
карма: 0
начавший
0
Ответов: 876
Рейтинг: 101
#4: 2009-01-29 11:59:46 ЛС | профиль | цитата
Андрей., вроде работает, но как остановить перебор

вот тестовая схема


Add(InfoTip,11770,28,455)
{
Info=#51:Обработчик текста, или просто задержка на 1 секунду|
Font=[Tahoma,10,0,0,204]
Frame=2
HAlign=0
Width=335
Height=177
}
Add(ListBox,4313538,392,21)
{
Left=660
Top=2
Width=110
Height=500
Ctl3D=1
Strings=#5:lOlOl|9:WickeDick|11:HenryNewman|9:lorDFreak|9:HenryWill|11:andyVincent|8:Wordepic|8:NonaName|
}
Add(MultiElementEx,1100096,119,581)
{
link(Data,3080417:Var2,[])
link(onComplete,980447:In,[(159,587)(159,573)])
link(status,16227043:doText,[])
}
BEGIN_SDK
Add(EditMultiEx,14479875,21,21)
{
WorkCount=#15:doProcedureData|
EventCount=#10:onComplete|6:status|
DataCount=#4:Data|
Height=130
link(doProcedureData,15400024:doEvent1,[(24,27)(24,62)])
}
Add(Hub,15400024,35,56)
{
OutCount=3
link(onEvent1,4269804:doData,[(77,62)(77,34)])
link(onEvent2,13254693:doLength,[])
link(onEvent3,15826600:doTimer,[(70,76)(70,111)])
}
Add(Length,13254693,168,63)
{
link(Str,14479875:Data,[(174,24)(27,24)])
}
Add(FormatStr,15443289,168,105)
{
DataCount=1
Mask="%1 = букв"
link(onFString,8079723:doWork3,[(256,111)])
link(Str1,13254693:Result,[])
}
Add(Timer,15826600,84,105)
{
Interval=500
Enable=1
AutoStop=1
link(onTimer,3334719:doEvent1,[])
}
Add(DoData,4269804,98,28)
{
Data=String(Обработка)
link(onEventData,8079723:doWork2,[(191,34)(191,48)])
}
Add(Hub,3334719,126,105)
{
link(onEvent1,15443289:doString,[])
link(onEvent2,1192525:doTimer,[])
}
Add(HubEx,8079723,252,35)
{
Angle=3
link(onEvent,14479875:status,[(256,34)])
}
Add(Timer,1192525,259,112)
{
Interval=500
Enable=1
AutoStop=1
link(onTimer,14479875:onComplete,[(306,118)(306,27)])
}
END_SDK
Add(Edit,16227043,280,588)
{
Left=225
Top=30
Width=130
Ctl3D=1
Text=""
}
Add(LineBreak,5755346,35,581)
{
Caption="doStart"
Color=-16777192
link(Out,12277073:doEvent1,[])
Primary=[13803589,651,-399]
}
Add(LineBreak,7811763,623,413)
{
Caption="text"
Type=1
Color=15780518
link(Data,863698:Item,[])
Primary=[11699194,-504,70]
}
Add(LineBreak,95897,21,294)
{
Caption="doComplete"
Color=-16777192
link(Out,13089735:doEvent2,[(151,300)(151,251)])
Primary=[980447,189,273]
}
Add(LED,13871021,805,14)
{
Left=625
Top=5
Width=30
Height=30
ColorOn=65280
ColorOff=0
}
Add(LineBreak,3971698,714,21)
{
Caption="endList"
Color=16776960
link(Out,13871021:doOff,[])
Primary=[8459432,-175,322]
}
Add(LineBreak,6918319,714,56)
{
Caption="startList"
Color=16752639
link(Out,13871021:doOn,[(784,62)(784,34)])
Primary=[8109193,-686,98]
}
Add(Button,11163121,14,231)
{
Left=225
Top=55
Width=130
Caption="StartList"
link(onClick,14443215:doEvent1,[])
}
Add(Hub,14443215,63,231)
{
link(onEvent1,8109193:In,[(89,237)(89,181)(16,181)(16,160)])
link(onEvent2,13089735:doEvent1,[])
}
Add(Edit,6032220,154,525)
{
Left=225
Top=5
Width=130
Ctl3D=1
Text=""
link(Str,3080417:Var3,[(160,520)])
}
Add(GetDataEx,3080417,112,511)
{
link(Data,11699194:Var,[])
}
Add(Hub,12277073,91,581)
{
link(onEvent1,1100096:doProcedureData,[])
link(onEvent2,6032220:doText,[(113,594)(113,531)])
}
Add(MainForm,6458067,14,7)
{
Left=20
Top=105
Width=780
Height=530
link(onCreate,16318049:doOperation,[(138,27)(138,132)])
}
Add(ArrayRW,863698,623,182)
{
link(onRead,13803589:In,[])
link(Array,4313538:Array,[(629,92)(412,92)])
}
Add(Hub,13089735,210,238)
{
InCount=2
link(onEvent1,1052212:doNext,[])
link(onEvent2,2839218:doCompare,[(236,251)(236,342)])
}
Add(Counter,1052212,399,238)
{
Min=-1
Default=-1
Point(Max)
Point(doMax)
link(onNext,863698:doRead,[(605,244)(605,188)])
link(Max,16097507:Var1,[(405,191)])
}
Add(If_else,2839218,399,336)
{
link(onTrue,16756399:doEvent1,[])
link(Op1,1052212:Count,[])
link(Op2,16097507:Var2,[(412,310)(475,310)])
}
Add(Math,16318049,399,126)
{
OpType=1
Op2=1
ResultType=0
link(onResult,1052212:doMax,[(495,132)(495,295)(347,295)(347,265)])
link(Op1,4313538:Count,[])
}
Add(Hub,16756399,469,336)
{
link(onEvent1,1052212:doReset,[(495,342)(495,301)(338,301)(338,258)])
link(onEvent2,8459432:In,[])
}
Add(GetDataEx,16097507,462,182)
{
link(Data,16318049:Result,[(475,172)(405,172)])
}

да и что такое мультик динамический
карма: 1

0
файлы: 1code_11618.txt [4.3KB] [112]
Ответов: 485
Рейтинг: 86
#5: 2009-01-29 13:23:37 ЛС | профиль | цитата
Мееееедленный перебор

Add(ListBox,4313538,434,189)
{
Left=10
Top=7
Width=110
Height=170
Ctl3D=1
Strings=#5:lOlOl|9:WickeDick|11:HenryNewman|9:lorDFreak|9:HenryWill|11:andyVincent|8:Wordepic|8:NonaName|
}
Add(Button,11163121,392,259)
{
Left=130
Top=10
Width=130
Caption="StartList"
link(onClick,9479319:doData,[])
}
Add(MainForm,6458067,343,259)
{
Left=20
Top=105
Width=408
Height=223
Position=1
}
Add(ArrayRW,13284493,644,273)
{
link(onRead,11929654:doAdd,[])
link(Array,4313538:Array,[(650,246)(454,246)])
}
Add(Timer,6248506,525,273)
{
Enable=1
Point(doAutoStop)
Point(onStop)
link(onTimer,5988631:doOperation,[])
link(onStop,5852185:doMessage,[(567,286)(567,335)])
}
Add(DoData,9479319,441,259)
{
link(onEventData,12999959:doEvent1,[])
link(Data,4313538:Count,[])
}
Add(Hub,12999959,490,259)
{
OutCount=3
link(onEvent1,5988631:doClear,[(575,265)(575,286)])
link(onEvent2,6248506:doAutoStop,[(514,272)(514,293)])
link(onEvent3,6248506:doTimer,[])
}
Add(Math,5988631,595,273)
{
Op2=1
ResultType=0
Default=-1
Point(doClear)
link(onResult,13284493:doRead,[])
link(Op1,5988631:Result,[(601,259)(586,259)(586,317)(601,317)])
}
Add(Message,5852185,791,329)
{
Message="конец перебора"
}
Add(ListBox,11929654,693,273)
{
Left=275
Top=7
Width=110
Height=170
Ctl3D=1
}


карма: 0

0
файлы: 1code_11619.txt [1.3KB] [112]
Ответов: 3851
Рейтинг: 159
#6: 2009-01-29 20:39:33 ЛС | профиль | цитата
flud писал(а):
что такое мультик динамический
это облегчение (и иногда ускорение) работы схемы (и иногда хиасмиста)..
Вот пример code_11626.txt, показывающий "параллельную" обработку нескольких значений с заранее неизветным временем обработки (в нашем случае это определяется RND)..
карма: 0
начавший
0
файлы: 1code_11626.txt [2.8KB] [142]
6
Сообщение
...
Прикрепленные файлы
(файлы не залиты)