以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 金字塔软件问题提交 (http://222.73.7.161/bbs/list.asp?boardid=2) ---- 后台程序 (http://222.73.7.161/bbs/dispbbs.asp?boardid=2&id=30932) |
-- 作者:sven0321 -- 发布时间:2012/11/27 11:32:22 -- 后台程序 后台程序一开始能够运行几次 通过监控可以看到运行完毕 在此期间内存占用量不断提高 最后金字塔崩溃 我想问下这是什么原因 因为没有释放内存吗? 有什么解决方法 选项里选择的是 让金字塔使用最大内存 我电脑12G内存 电脑总内存到达3.5G左右 金字塔进程占用内存1.8G 的时候 金字塔软件会停止运行
|
-- 作者:sven0321 -- 发布时间:2012/11/27 11:37:54 -- 用C++的话 都有RELEASE()函数去释放内存的 |
-- 作者:admin -- 发布时间:2012/11/27 12:06:34 -- 检查你是不是在序列模式下在循环语句中使用REF,MA等带有统计性质函数了 |
-- 作者:sven0321 -- 发布时间:2012/11/27 12:08:59 -- 我是逐周期模式下 用了循环 双重循环 没有MA REF等函数 |
-- 作者:sven0321 -- 发布时间:2012/11/27 12:11:02 -- 因为TINSORT函数不能够满足我的需要 所以循环我自己写的 |
-- 作者:sven0321 -- 发布时间:2012/11/27 12:15:26 -- 我在论坛上查了下 金字塔是32位的 所以最多支持到4G内存? 我物理内存再高也没有用? 现在的问题是既然程序能够运行1次 2次 3次 为什么接下去就不行了 是什么地方占用了内存 运行第一次的时候占用的内存难道和第2次第3次不一样吗? |
-- 作者:admin -- 发布时间:2012/11/27 12:22:25 -- 代码贴上来我们帮你分析看看 |
-- 作者:sven0321 -- 发布时间:2012/11/27 12:26:47 -- variable:arr1[22]=0,arr4[22]=\'str\',counter=0,counter1=0,temp4=\'str\',temp2=0; ag1:=stkindi(\'ag01\',\'涨跌排序.涨幅\',0,6,0); al1:=stkindi(\'al02\',\'涨跌排序.涨幅\',0,6,0); au1:=stkindi(\'au06\',\'涨跌排序.涨幅\',0,6,0); ay1:=stkindi(\'ay05\',\'涨跌排序.涨幅\',0,6,0); c1:=stkindi(\'c05\',\'涨跌排序.涨幅\',0,6,0); cf1:=stkindi(\'cf05\',\'涨跌排序.涨幅\',0,6,0); cu1:=stkindi(\'cu03\',\'涨跌排序.涨幅\',0,6,0); er1:=stkindi(\'er05\',\'涨跌排序.涨幅\',0,6,0); j1:=stkindi(\'j05\',\'涨跌排序.涨幅\',0,6,0); l1:=stkindi(\'l05\',\'涨跌排序.涨幅\',0,6,0); m1:=stkindi(\'m05\',\'涨跌排序.涨幅\',0,6,0); me1:=stkindi(\'me01\',\'涨跌排序.涨幅\',0,6,0); p1:=stkindi(\'p05\',\'涨跌排序.涨幅\',0,6,0); rb1:=stkindi(\'rb05\',\'涨跌排序.涨幅\',0,6,0); ro1:=stkindi(\'ro01\',\'涨跌排序.涨幅\',0,6,0); ru1:=stkindi(\'ru05\',\'涨跌排序.涨幅\',0,6,0); sry1:=stkindi(\'sry05\',\'涨跌排序.涨幅\',0,6,0); ta1:=stkindi(\'ta05\',\'涨跌排序.涨幅\',0,6,0); v1:=stkindi(\'v05\',\'涨跌排序.涨幅\',0,6,0); wsy1:=stkindi(\'wsy05\',\'涨跌排序.涨幅\',0,6,0); y1:=stkindi(\'y05\',\'涨跌排序.涨幅\',0,6,0); zn1:=stkindi(\'zn02\',\'涨跌排序.涨幅\',0,6,0); arr4[1]:= \'ag01\'; arr4[2]:= \'al02\'; arr4[3]:= \'au06\'; arr4[4]:= \'AY05\';arr4[5]:= \'c05\'; arr4[6]:= \'cf05\'; arr4[7]:= \'cu03\'; arr4[8]:= \'er05\'; arr4[9]:= \'j05\';arr4[10]:= \'l05\'; arr4[11]:=\' m05\'; arr4[12]:= \'me01\'; arr4[13]:= \'p05\'; arr4[14]:= \'rb05\';arr4[15]:= \'ro01\'; arr4[16]:= \'ru05\'; arr4[17]:= \'sry05\'; arr4[18]:= \'ta05\'; arr4[19]:= \'v05\';arr4[20]:= \'wsy05\';arr4[21]:=\'y05\'; arr4[22]:=\'zn02\'; arr1[1]:= ag1; arr1[2]:= al1; arr1[3]:= au1; arr1[4]:= ay1;arr1[5]:= c1; arr1[6]:= cf1; arr1[7]:= cu1; arr1[8]:= er1; arr1[9]:= j1;arr1[10]:= l1; arr1[11]:= m1; arr1[12]:= me1; arr1[13]:= p1; arr1[14]:= rb1;arr1[15]:= ro1; arr1[16]:= ru1; arr1[17]:= sry1; arr1[18]:= ta1; arr1[19]:= v1;arr1[20]:= wsy1; arr1[21]:=y1; arr1[22]:=zn1; for counter1 = 1 to 22 do begin for counter = 1 to 21 do begin if arr1[counter]>arr1[counter+1] then do BEGIN temp2: = arr1[counter+1]; arr1[counter+1]: = arr1[counter]; arr1[counter]:= temp2; temp4:=arr4[counter+1]; arr4[counter+1]:=arr4[counter]; arr4[counter]:=temp4; end; end end; 问题应该就是出在这部分了
|
-- 作者:sven0321 -- 发布时间:2012/11/27 12:28:29 -- 如果能帮我解决问题的话就太感谢了 |
-- 作者:sven0321 -- 发布时间:2012/11/27 12:42:19 -- 现在金字塔跳出窗口说我跨周期调用超过1000个了 我设置的是1000 我这个应该属于横向指标排序 问题是金字塔的功能不能满足我的需要 我只能用其他的办法 我这么写可能是有问题 只是不知道问题出在哪了 |