В данном виде програма по истечению 3-х часов вылетает и появляется сообщение типа выход из памяти. Подскажите как с этим бороться.
Add(MultiElementEx,15841743,755,205)
{
@Hint=#62:Блок производит побитное перемножение двух последовательностей|
link(onResult,2093802:doCompare,[])
AddHint(120,-136,155,39,@Hint)
}
BEGIN_SDK
Add(EditMultiEx,10171738,21,21)
{
WorkCount=#29:doWork1= Строка для обработки|42:doFor=Запуск цикла математической операции|
EventCount=#27:onResult=Результат операции|28:onStop=Конец перебора строки|8:onEvent2|
VarCount=#21:Var1=Количество строк|6:Result|
Width=832
Height=641
link(doWork1,16287771:doValue,[(87,27)(87,69)])
link(doFor,3208193:doWork1,[(249,34)(249,118)])
link(Var1,9679639:Var1,[(27,341)(426,341)])
link(Result,4811718:Result,[(34,620)(454,620)])
}
Add(CharArray,5602197,210,308)
{
@Hint=#6:строка|
link(onLoad,10855928:doLoad,[])
link(String,16287771:Value,[(216,202)(160,202)])
AddHint(-75,-40,50,13,@Hint)
}
Add(CharArray,10855928,329,308)
{
@Hint=#14:двойная строка|
link(onLoad,16610885:doLength,[])
link(String,3208193:Var2,[(335,226)(489,226)])
AddHint(13,-43,95,13,@Hint)
}
Add(ArrayEnum,9286296,210,378)
{
link(onItem,9002011:doOperation,[])
link(onEndEnum,7147012:doOperation,[(266,391)(266,552)])
link(Array,5602197:Array,[])
}
Add(ArrayRW,10935616,329,378)
{
link(onRead,3110686:In,[])
link(Array,10855928:Array,[])
link(Index,9002011:Result,[(342,366)(310,366)(310,422)(279,422)])
}
Add(Math,9002011,273,378)
{
link(onResult,10935616:doRead,[])
link(Op1,9286296:Index,[(279,366)(251,366)(251,422)(223,422)])
link(Op2,9756980:Position,[(286,366)(188,366)(188,421)(136,421)])
}
Add(Length,16610885,388,308)
{
link(onLength,4680120:doEvent1,[])
link(Str,5602197:Str,[(394,298)(267,298)(267,352)(223,352)])
}
Add(LineBreakEx,11725650,420,413)
{
Caption="TestString"
Type=3
link(_Data,9679639:Var2,[])
}
Add(LineBreakEx,367025,399,462)
{
Caption="TestString"
Type=2
}
Add(For,9756980,130,378)
{
Start=1
link(onEvent,5329893:doEvent1,[])
link(onStop,10171738:onStop,[(508,391)(508,34)])
link(End,1804643:Var2,[(143,367)(419,367)])
}
Add(Math,12271312,471,308)
{
OpType=1
ResultType=0
link(onResult,9756980:doFor,[(515,314)(515,349)(118,349)(118,384)])
link(Op1,9679639:Var3,[(477,296)(435,296)(435,352)])
}
Add(Math,15052415,279,450)
{
OpType=6
link(onResult,6391282:doOperation,[])
link(Op1,9286296:Item,[(285,430)(216,430)])
link(Op2,10935616:Item,[(292,430)(335,430)])
}
Add(LineBreak,3195488,238,449)
{
link(Out,15052415:doOperation,[(277,455)(277,456)])
Primary=[3110686,133,-71]
}
Add(LineBreak,15794052,140,308)
{
link(Out,5602197:doLoad,[])
Primary=[12655327,399,-196]
}
Add(Hub,5329893,170,378)
{
link(onEvent1,9286296:doEnum,[])
link(onEvent2,13259424:In,[(200,391)(200,510)])
}
Add(LineBreak,6133818,301,504)
{
link(Out,6391282:doClear,[(341,510)(341,463)])
Primary=[13259424,-84,0]
}
Add(Math,6391282,350,450)
{
ResultType=0
Point(doClear)
link(Op1,6411355:Var1,[(356,438)(344,438)(344,494)])
}
Add(Math,7147012,350,546)
{
OpType=2
Op2=2
Point(doClear)
link(onResult,2551852:doOperation,[])
link(Op1,6411355:Var2,[])
}
Add(Math,2551852,399,546)
{
OpType=1
Point(doClear)
link(onResult,10171738:onResult,[(642,552)(642,27)])
link(Op1,367025:getVar,[])
link(Op2,7147012:Result,[(412,534)(384,534)(384,590)(356,590)])
}
Add(Math,4811718,448,546)
{
OpType=3
Point(doClear)
link(Op1,2551852:Result,[(454,534)(430,534)(430,590)(405,590)])
link(Op2,12496027:getVar,[])
}
Add(GetDataEx,6411355,350,489)
{
link(Data,6391282:Result,[])
}
Add(GetDataEx,9679639,420,347)
{
Angle=3
link(Data,1804643:Var3,[])
}
Add(LineBreakEx,12496027,455,485)
{
Caption="TestString"
Type=2
}
Add(Hub,4680120,441,308)
{
link(onEvent1,12271312:doOperation,[])
link(onEvent2,10171738:onEvent2,[(654,321)(654,41)])
}
Add(MultiElement,3208193,476,112)
{
@Hint=#44:Записывает строку и формирует двойную строку|
link(onEvent1,12655327:In,[])
AddHint(17,-66,185,26,@Hint)
}
BEGIN_SDK
Add(EditMulti,4089528,21,21)
{
EventCount=1
WorkCount=1
VarCount=2
link(doWork1,12911346:doValue,[(39,27)(39,97)])
link(Var1,14450652:Var2,[(27,203)(62,203)])
link(Var2,6291844:Value,[(34,172)(251,172)])
}
Add(Memory,12911346,56,91)
{
link(onData,7447056:doStrCat,[])
}
Add(StrCat,7447056,112,91)
{
link(onStrCat,6291844:doValue,[])
link(Str1,1602444:Var2,[])
link(Str2,1602444:Var3,[(125,79)])
}
Add(GetDataEx,14450652,56,175)
{
link(Data,12911346:Value,[])
}
Add(GetDataEx,1602444,112,74)
{
Angle=3
link(Data,14450652:Var3,[(92,79)(92,180)])
}
Add(Memory,6291844,245,91)
{
link(onData,4089528:onEvent1,[(299,97)(299,27)])
}
END_SDK
Add(Memory,16287771,154,63)
{
}
Add(GetDataEx,1804643,413,347)
{
Angle=3
link(Data,16610885:Result,[(394,352)])
}
END_SDK
Add(Service,2953706,24,149)
{
link(onStart,11895990:doStart,[(66,155)(66,223)])
link(onStop,11895990:doStop,[(66,162)(66,230)])
}
Add(GetDataEx,5381912,613,161)
{
link(Data,9244718:Result,[])
}
Add(Hub,8682092,364,105)
{
InCount=2
OutCount=5
link(onEvent1,6715422:doRandomize,[(481,111)(481,132)])
link(onEvent3,14250407:doEvent1,[])
link(onEvent5,4301393:doRandomize,[(471,139)(471,317)])
}
Add(For,13327416,508,119)
{
@Hint=#24:Длина последовательности|
Start=1
End=32
link(onEvent,6715422:doRandom,[])
link(onStop,15684307:doEvent1,[(546,132)(546,181)])
link(End,8472275:Var2,[])
AddHint(-215,-72,157,13,@Hint)
}
Add(Random,6715422,557,119)
{
Max=1
link(onRandom,9244718:doStrCat,[])
}
Add(StrCat,9244718,613,119)
{
Point(doClear)
link(Str1,5381912:Var1,[(619,107)(610,107)(610,166)])
}
Add(DoData,221029,620,205)
{
PColor(onEventData,16711680)
link(onEventData,4011652:doEvent1,[(658,211)(658,211)])
link(Data,5381912:Var3,[(626,166)])
}
Add(Hub,15684307,571,175)
{
OutCount=3
link(onEvent1,221029:doData,[(606,181)(606,211)])
link(onEvent2,9244718:doClear,[(595,188)(595,132)])
link(onEvent3,7611684:doFor,[(597,195)(597,253)(503,253)(503,310)])
}
Add(Hub,14250407,455,119)
{
link(onEvent1,13327416:doFor,[])
}
Add(For,3845777,217,105)
{
@Hint=#17:Количество опытов|
End=2097151
PColor(onStop,16776960)
link(onEvent,8682092:doEvent1,[])
link(onStop,11521879:doSort,[(346,118)(346,448)])
AddHint(0,64,114,13,@Hint)
}
Add(Memory,4207779,515,31)
{
Default=Real(32)
}
Add(GetDataEx,8472275,515,78)
{
link(Data,4207779:Value,[])
}
Add(Hub,13517545,140,156)
{
link(onEvent1,3845777:doFor,[(168,162)(168,111)])
}
Add(LineBreakEx,2297033,1005,634)
{
Caption="TestString"
Type=2
}
Add(LineBreakEx,14745359,695,117)
{
Caption="TestString"
Type=3
link(_Data,8472275:Var3,[(701,83)])
}
Add(LineBreakEx,7442069,1086,633)
{
Caption="Test"
Type=2
}
Add(GetDataEx,4217340,620,346)
{
link(Data,2178854:Result,[])
}
Add(For,7611684,515,304)
{
@Hint=#24:Длина последовательности|
@Color=43520
link(onEvent,4301393:doRandom,[])
link(onStop,4184729:doEvent1,[(563,317)(563,366)])
link(End,9643682:getVar,[])
AddHint(-212,85,157,13,@Hint)
}
Add(Random,4301393,564,304)
{
@Color=43520
Max=1
link(onRandom,2178854:doStrCat,[])
}
Add(StrCat,2178854,620,304)
{
@Color=43520
Point(doClear)
link(Str1,4217340:Var1,[(626,292)(617,292)(617,351)])
}
Add(DoData,9565718,627,390)
{
@Color=43520
PColor(onEventData,16711680)
link(onEventData,15841743:doFor,[(707,396)(707,218)])
link(Data,4217340:Var3,[(633,351)])
}
Add(Hub,4184729,578,360)
{
@Color=43520
OutCount=3
link(onEvent1,9565718:doData,[(613,366)(613,396)])
link(onEvent2,2178854:doClear,[(602,373)(602,317)])
}
Add(Hub,4011652,675,205)
{
link(onEvent1,15841743:doWork1,[])
}
Add(LineBreakEx,9643682,522,264)
{
Caption="TestString"
Type=2
}
Add(StrList,6290446,987,364)
{
FileName="333.txt"
}
Add(FormatStr,12252793,1120,695)
{
DataCount=3
Mask="%1VKFvkf_%2_%3_.txt"
Point(FString)
link(onFString,6669432:doSave,[(1174,701)(1174,532)])
link(Str1,8393501:CurrentDir,[(1126,679)(958,679)])
link(Str2,2297033:getVar,[(1133,669)(1011,669)])
link(Str3,7442069:getVar,[(1140,662)(1092,662)])
}
Add(Dir,8393501,952,632)
{
}
Add(StrList,6669432,1195,491)
{
}
Add(FormatStr,6215732,1118,491)
{
Mask="%1; %2"
Point(FString)
link(onFString,6669432:doAdd,[])
}
Add(ArrayCountRepeats,11053984,1001,491)
{
ArrayType=2
link(onCount,6215732:doString,[])
link(onEndCount,12252793:doString,[(1077,504)(1077,701)])
link(Array,11521879:ArraySort,[])
}
Add(ArraySort,11521879,1001,442)
{
ArrayType=2
CaseSensitive=0
Point(doCaseSensitive)
link(onEndSort,11053984:doCount,[(1044,448)(1044,481)(989,481)(989,497)])
link(Array,6290446:Array,[])
}
Add(If_else,2093802,819,205)
{
link(onFalse,6290446:doAdd,[(919,218)(919,370)])
link(Op2,9223170:getVar,[(832,195)(832,195)])
}
Add(LineBreakEx,9223170,826,172)
{
Caption="TestString"
Type=2
}
Add(TimeCounter,11895990,77,217)
{
link(onStart,13517545:doEvent1,[(125,223)(125,162)])
link(onStop,10216626:doOperation,[(117,230)(117,237)])
}
Add(Message,7190578,182,231)
{
}
Add(Math,10216626,126,231)
{
OpType=3
Op2=60000
ResultType=0
link(onResult,7190578:doMessage,[])
}