Foxtable(狐表)用户栏目专家坐堂 → 出现闪退,是不是溢出了?


  共有3092人关注过本帖树形打印复制链接

主题:出现闪退,是不是溢出了?

帅哥哟,离线,有人找我吗?
zpsun2003
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:131 积分:1272 威望:0 精华:0 注册:2018/4/19 21:34:00
出现闪退,是不是溢出了?  发帖心情 Post By:2019/1/22 9:44:00 [显示全部帖子]

编写一个设计优化软件,经过计算后合格的参数存储到以下集合中:
                                                    txzjtxdzjhzz.add(txzjtxdzcs)    '铁芯直径
                                                    dyzsjhzz.add( dyzscs)    '低压匝数
                                                    dyxghjhzz.add( dyxghcs)    '低压线规厚
                                                    dyxgkjhzz.add( dyxgkcs)    '低压线规宽
                                                    dydtezxjljhzz.add( dyxqdtezxjlcs)   '低压线圈到铁扼最小距离
                                                    gycsjhzz.add( gyxqcscs)  '高压线圈层数
                                                    gyxghjhzz.add( gyxghcs)  '高压线规厚
                                                    gyxgkjhzz.add( gyxgkcs)  '高压线规宽
                                                    dyydgsjhzz.add( dyydgscs)  '低压油道个数
                                                    gyydgsjhzz.add( gyydgscs)   '高压油道个数
                                                    dybydgsjhzz.add( dybydgscs)  '低压半油道个数
                                                    zkdccjhzz.add( zkdcccs)   '主空道个数
                                                    gybydgsjhzz.add( gybydgscs)  '高压半油道个数
                                                    txgdykdbjhzz.add( txgdykdbcs)  '高压高度与宽度比
                                                    txcgym0bjhzz.add( txcgym0bcs)  '高压窗高与M0比
                                                    cbjgjhzz.add( cbjgcs)    '成本价格
                                                    kzshjhzz.add( kzshsjzcs )  '空载损耗
                                                    kzdljhzz.add( kzdlsjzcs)  '空载电流
                                                    fzshjhzz.add( fzshsjzcs)  '负载损耗
                                                    zshjhzz.add( zshsjzcs)  '总损耗
                                                    dlzkjhzz.add( zkdysjzcs)  '短路阻抗
                                                    dyxqwcjhzz.add( dyrzwccs)  '低压线圈温差
                                                    gyxqwcjhzz.add( gyrzwccs)  '高压线圈温差
                                                    txctmdjhzz.add( txctmdcs ) '铁芯磁通密度
                                                    dydlmdjhzz.add( dydlmdcs)  '低压电流密度
                                                    gydlmdjhzz.add( gydlmdcs)  '高压电流密度
                                                    gyzdcjgzdyjhzz.add( gycjzdgzdycs ) '高压最大层间工作电压
                                                    gyxqdtejljhzz.add( gyxqdtejlcs)  '高压线圈到铁扼距离
                                                    gdydkgdcjhzz.add( gdydkgdccs)  '高低压电抗高度差
                                                    ydcwsjhzz.add( ydcwssjzcs)  '油顶层温升
                                                    dyxqwsjhzz.add( dyrzwssjzcs)  '低压线圈温升
                                                    gyxqwsjhzz.add( gyrzwssjzcs)  '高压线圈温升
这些集合都是定义的全局变量,集合长度多的时候可以到几百万或几千万,但运行时发现集合长度到100万多点就出现闪退,先暂时屏蔽以上集合后就不会出现闪退了。由于运算量大是通过调用线程计算的
1、是不是溢出导致的,有什么好的处理方式吗?
2、集合长度只有通过计算完成后才能确定,像这种情况,怎么存储这些数据好一些。

 回到顶部
帅哥哟,离线,有人找我吗?
zpsun2003
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:131 积分:1272 威望:0 精华:0 注册:2018/4/19 21:34:00
  发帖心情 Post By:2019/1/22 11:01:00 [显示全部帖子]

所有合格方案都要先存储下来,有没有方法可以存储大容量数据的,用集合或数组?

 回到顶部
帅哥哟,离线,有人找我吗?
zpsun2003
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:131 积分:1272 威望:0 精华:0 注册:2018/4/19 21:34:00
  发帖心情 Post By:2019/1/22 12:21:00 [显示全部帖子]

因为现在存储在集合中的参数是一系列合格方案,我要统计出这些方案中最优的一部分方案再存到表中,都存储到表中太影响速度了吧,而且多的时候要几百万上千万的

 回到顶部
帅哥哟,离线,有人找我吗?
zpsun2003
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:131 积分:1272 威望:0 精华:0 注册:2018/4/19 21:34:00
  发帖心情 Post By:2019/1/22 14:19:00 [显示全部帖子]

我现在想都放到一个集合里按照成本最优,或性能最优,或其他条件可以任意的筛选,排序,原始集合里的内容没有变。就像把数据先存到表里,再在表里进行排序和筛选一样,要是从一开始就按照一个条件去筛选或排序集合,不是很灵活。

 回到顶部
帅哥哟,离线,有人找我吗?
zpsun2003
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:131 积分:1272 威望:0 精华:0 注册:2018/4/19 21:34:00
  发帖心情 Post By:2019/1/22 14:23:00 [显示全部帖子]

老师,还有一个问题:由于运算量大,我现在采用调用线程进行运算和把线程内容写入一个内部函数,通过异步调用内部函数去运算,哪个更好一些

 回到顶部
帅哥哟,离线,有人找我吗?
zpsun2003
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:131 积分:1272 威望:0 精华:0 注册:2018/4/19 21:34:00
  发帖心情 Post By:2019/1/22 16:12:00 [显示全部帖子]

现在用新建线程,发生数组索引超出范围或集合长度过大不会报错直接就闪退,这方面有好的办法吗,至少可以报出错误。用异步函数调用估计也会这样吧

 回到顶部