Вверх ↑
Ответов: 92
Рейтинг: 0
#1: 2016-02-24 00:11:16 ЛС | профиль | цитата
Tad писал(а):

code_36978.txt
и т.д.


Ага, спасибо) Навалил всего и от души)
Вроде вычистил ненужные мемори и удалил дублирующиеся функции.

http://forum.hiasm.net/xf/attach/share/doordom2.zip

Но один черт медленно работает, веню во всем построчный метод перебора, делал парсер яндекс бара (шттп гет), через сплошной поток строк из SearchInFile, все работает на очень большой скорости, сначала делал так же, но определение вхуз (tcp клиент) не работает таким методом((
------------ Дoбавленo в 00.11:
Решил короче все заново перелопатить, взял за основу многопоточный прокси чекер что крид выкидывал, и походу напортачил
Выдает ровно столько результатов, сколько выставлено потоков и глохнет... Подскажите где напортачил?

Make(delphi)
ver(4.05 build 186)
Add(MultiElementEx,7652017,1054,574)
{
@Hint=#31:Модуль MultiThreads_Checker_1.1|
Mode=1
link(OnResult,16344680:doEvent1,[])
link(End,3306489:In,[])
link(get_ip_port,6487186:Var,[])
AddHint(180,-109,184,13,@Hint)
}
BEGIN_SDK
Add(EditMultiEx,9746293,21,21)
{
WorkCount=#5:##add|9:##hdelete|
EventCount=#8:OnResult|3:End|
VarCount=#7:##count|13:##eventHandle|
DataCount=#11:get_ip_port|0:|
Width=1630
Height=851
VOffset=80
HOffset=140
Point(##add)
Point(##hdelete)
Point(##count)
Point(##eventHandle)
link(##add,12340182:doWork,[])
}
Add(LineBreakEx,8666620,1466,101)
{
Caption="Result"
Type=1
link(OnEvent,15049631:doSafeMode,[])
}
Add(LineBreakEx,47105,1520,135)
{
Caption="End"
Type=1
link(OnEvent,9746293:End,[(1594,141)(1594,114)])
}
Add(SafeMode,15049631,1528,101)
{
Name="checker_result"
link(onSafeMode,9746293:OnResult,[])
}
Add(LineBreakEx,6281593,1271,534)
{
Caption="Result"
}
Add(LineBreakEx,7307885,49,196)
{
Caption="StartCheck"
Type=1
link(OnEvent,6667049:doSafeMode,[(128,202)(128,181)])
}
Add(LineBreakEx,12340182,54,101)
{
Caption="StartCheck"
}
Add(LineBreak,6639068,161,38)
{
Caption="get_ip_port"
Type=1
link(Data,9746293:get_ip_port,[])
Primary=[8039361,13,104]
}
Add(SafeMode,6667049,134,175)
{
Name="checker_get_ip_port"
link(onSafeMode,3700032:doData,[])
}
Add(DoData,3700032,189,175)
{
link(onEventData,3013132:doCompare,[(244,181)(244,193)])
link(Data,8039361:Var,[(195,169)(180,169)])
}
Add(Hub,10215304,677,180)
{
OutCount=5
link(onEvent1,9387456:doData,[(706,186)(706,188)])
link(onEvent2,16357934:In,[(748,193)(748,293)])
}
Add(Thread,14975125,625,180)
{
Delay=1
FastStop=0
BusyEvent=1
link(onExec,10215304:doEvent1,[])
}
Add(If_else,3013132,267,187)
{
link(onTrue,8080686:doEvent1,[(312,193)(312,163)])
link(onFalse,9654815:doCompare,[(317,200)(317,202)])
link(Op2,16764516:Value,[])
}
Add(Memory,16764516,274,130)
{
}
Add(Hub,8080686,325,157)
{
link(onEvent1,6214789:doWork,[(346,163)(346,159)])
link(onEvent2,16421175:doWork,[(346,170)(346,175)])
}
Add(LineBreakEx,6214789,353,153)
{
Caption="End"
}
Add(LineBreakEx,3820589,533,194)
{
Caption="StopCheck"
Type=1
link(OnEvent,14975125:doStop,[(616,200)(616,193)])
}
Add(LineBreakEx,16421175,353,169)
{
Caption="StopCheck"
}
Add(FormatStr,4957244,1141,525)
{
DataCount=8
Mask="%1,%2,%3,%4"
link(onFString,7593678:doEvent1,[(1214,531)(1214,540)])
link(Str1,3831849:Var,[])
link(Str3,6798492:Var,[])
link(Str4,12414457:Var,[])
}
Add(StrList,2159738,770,119)
{
Strings=#9:http://=;|10:https://=;|6:www.=;|3:/=;|
}
Add(MultiReplace,117603,763,182)
{
link(ReplaceList,13927829:Var2,[])
}
Add(Hub,7593678,1227,534)
{
OutCount=3
link(onEvent1,6281593:doWork,[])
link(onEvent2,1917053:doWork,[(1253,547)(1253,569)])
}
Add(LineBreakEx,1917053,1264,563)
{
Caption="StartCheck"
}
Add(StrMask,9654815,336,196)
{
Mask="http*"
link(onFalse,7516542:doStrCat,[])
link(onTrue,7695048:doWork3,[(431,224)])
}
Add(StrCat,7516542,385,196)
{
Str1="http://"
link(onStrCat,7695048:doWork2,[])
}
Add(Memory,16482908,448,196)
{
@Hint=#15:Состояние хоста|
link(onData,14975125:doStart,[(518,202)(518,186)])
}
Add(HubEx,7695048,427,196)
{
link(onEvent,16482908:doValue,[])
}
Add(DoData,9387456,721,182)
{
link(onEventData,117603:doMultiReplace,[])
link(Data,16081067:Var3,[(727,170)(592,170)(592,250)])
}
Add(GetDataEx,16081067,448,245)
{
link(Data,16482908:Value,[])
}
Add(HTTP_Get,9729894,294,406)
{
Wait=0
link(onDownload,1605886:doConvert,[])
link(URL,10781118:Result,[(300,394)(276,394)(276,450)(251,450)])
}
Add(StrCat,10781118,245,406)
{
Str1="http://bar-navig.yandex.ru/u?ver=2&show=32&url="
link(onStrCat,9729894:doDownload,[])
link(Str2,4000629:Var3,[(258,257)])
}
Add(Convertor,1605886,343,413)
{
Mode=11
link(onResult,2066129:doCharset,[])
}
Add(Charset,2066129,392,413)
{
Type=7
link(onCharset,15115652:doSearch,[])
}
Add(BlockFind,10626003,231,525)
{
IncludeBlock=1
StartBlock="<yaca url=""
EndBlock=""/>"
Point(onNotFind)
link(onSearch,1983570:doMultiReplace,[])
}
Add(MultiReplace,1983570,280,525)
{
link(onResult,15176407:doExec,[])
link(ReplaceList,834122:Var,[])
}
Add(DoData,13501458,455,525)
{
Data=String(Нет)
link(onEventData,11141711:doWork2,[])
}
Add(DoData,12805414,455,567)
{
Data=String(Да)
link(onEventData,11141711:doWork3,[(515,573)])
}
Add(Memory,8570413,525,525)
{
@Hint=#15:Состояние хоста|
link(onData,4957244:doString,[])
}
Add(BlockFind,15115652,476,413)
{
IncludeBlock=1
StartBlock="value=""
EndBlock=""/>"
Point(onNotFind)
link(onSearch,12563769:doValue,[])
link(onEndSearch,13443203:In,[(520,426)(520,444)(450,444)(450,461)])
}
Add(Memory,12563769,539,413)
{
@Hint=#15:Состояние хоста|
}
Add(RE_Search,15176407,343,525)
{
ModifierR=1
Point(Matches)
link(onMatch,13501458:doData,[])
link(onNotFound,10307742:doEvent1,[])
link(SourceStr,1983570:Result,[(349,516)(286,516)])
link(Expression,13863573:Var,[])
}
Add(HubEx,11141711,511,525)
{
link(onEvent,8570413:doValue,[])
}
Add(Hub,10307742,392,532)
{
link(onEvent1,12805414:doData,[(430,538)(430,573)])
link(onEvent2,10417390:doData,[(430,545)(430,615)])
}
Add(DoData,10417390,455,609)
{
Data=String(0)
}
Add(LineBreak,4507184,154,406)
{
Caption="Start Yandex"
link(Out,10781118:doStrCat,[])
Primary=[16357934,658,-119]
}
Add(LineBreak,7916522,539,462)
{
Caption="Тиц"
Type=1
link(Data,12563769:Value,[])
Primary=[6798492,616,-70]
}
Add(LineBreak,562416,154,525)
{
Caption="Start клей"
link(Out,10626003:doSearch,[])
Primary=[13443203,308,-70]
}
Add(LineBreak,9793537,525,574)
{
Caption="Клей"
Type=1
link(Data,8570413:Value,[])
Primary=[12414457,637,-161]
}
Add(LineBreak,6106396,812,175)
{
Caption="http"
Type=1
link(Data,13927829:Var3,[(818,173)])
Primary=[834122,-525,308]
}
Add(LineBreak,4340597,763,245)
{
Caption="Domain"
Type=1
link(Data,117603:Result,[])
Primary=[13863573,-413,252]
}
Add(LineBreak,3187541,448,273)
{
Caption="http"
Type=1
link(Data,4000629:Var2,[])
Primary=[3831849,693,168]
}
Add(GetDataEx,4000629,448,252)
{
link(Data,16081067:Var2,[])
}
Add(GetDataEx,13927829,770,168)
{
link(Data,2159738:Text,[])
}
END_SDK
Add(MainForm,11326563,847,371)
{
Width=478
Height=480
Caption=""
Position=1
}
Add(Button,13777211,818,574)
{
Left=115
Top=45
Width=185
Height=30
Caption="Проверить"
link(onClick,11304990:doFor,[])
}
Add(Edit,12430023,1001,530)
{
Left=10
Top=50
Text="5"
}
Add(Label,6950492,847,455)
{
Left=65
Top=55
Width=47
Height=17
Caption="Потоков"
}
Add(For,11304990,994,574)
{
Start=1
End=5
link(onEvent,7652017:##add,[])
link(End,12430023:Text,[])
}
Add(LineBreak,334677,992,461)
{
Caption="get_ip_port"
Type=1
link(Data,8737633:GetData,[])
Primary=[6487186,62,36]
}
Add(TCP_Server,5234581,847,413)
{
Port=5
}
Add(EventFromData,8737633,992,419)
{
link(onEvent,10645816:doData,[])
}
Add(Timer,6989260,707,371)
{
Interval=100
link(onTimer,3105876:doData,[])
}
Add(FormatStr,13623212,798,371)
{
DataCount=1
Mask="Прокси чекер 1.1; Активных модулей: %1;"
link(onFString,11326563:doCaption,[])
}
Add(LineBreakEx,5700589,1054,625)
{
Caption="CountMTCheck"
Type=3
link(_Data,7652017:##count,[])
}
Add(LineBreakEx,14012912,753,344)
{
Caption="CountMTCheck"
Type=2
}
Add(ChangeMon,3105876,753,371)
{
link(onData,13623212:doString,[])
link(Data,14012912:getVar,[])
}
Add(LineBreak,9944522,947,623)
{
Caption="End"
link(Out,16276923:doPush,[])
Primary=[3306489,152,-42]
}
Add(StrList,3673357,1120,377)
{
Strings=#12:parfumeco.ru|13:stockihome.ru|12:k-magic38.ru|19:http://the-sever.ru|12:divasalon.su|12:apk-group.ru|15:tktechnology.ru|17:tktechnologija.ru|14:elektrostil.su|14:novinkaomsk.ru|22:nasha-mebel-kotovsk.ru|15:zooplaneta55.ru|18:grillandveggies.ru|11:mingryaz.ru|14:tsm-kuzbass.ru|11:ekopro74.ru|9:kct-nn.ru|18:technology-info.ru|12:soundmaxi.ru|12:zaptorg74.ru|11:eat-meat.ru|15:mimaki-kazan.ru|13:falke-shop.ru|11:perm-zuk.ru|14:zuki-moscow.ru|13:tourismrus.ru|8:ekt46.ru|10:t-proff.ru|
Point(doGetString)
Point(onGetString)
Point(IdxToSelect)
link(onGetString,8737633:doData,[(1165,390)(1165,484)(980,484)(980,425)])
}
Add(InfoTip,14774,966,350)
{
Info=#27:Список ip:port для проверки|
Width=218
Height=151
}
Add(Hub,6078942,1084,419)
{
link(onEvent1,3673357:doGetString,[])
link(onEvent2,3673357:doDelete,[(1109,432)(1109,397)])
}
Add(DoData,10645816,1037,419)
{
Data=Integer(0)
link(onEventData,6078942:doEvent1,[])
}
Add(Stack,16276923,994,623)
{
link(onPop,7652017:##hdelete,[(1040,636)(1040,587)])
link(Data,7652017:##eventHandle,[(1000,615)(1067,615)])
}
Add(Timer,9657903,948,641)
{
Interval=30
link(onTimer,16276923:doPop,[(987,647)(987,636)])
}
Add(Edit,9371808,1274,539)
{
Left=10
Top=15
Width=290
Text=""
Alignment=2
}
Add(Hub,16344680,1239,574)
{
link(onEvent1,9371808:doText,[(1263,580)(1263,545)])
link(onEvent2,9855146:doAdd,[(1263,587)(1263,657)])
}
Add(Memo,9855146,1274,651)
{
Left=10
Top=80
Width=290
Height=320
ScrollBars=2
}
карма: 0

0