如何抑制内存的增长?--在线等待(如能解决,另送500大洋) (100分)

  • 主题发起人 主题发起人 hdzj2000
  • 开始时间 开始时间
[:)][blue][/blue]ADO的问题
ADO频繁打开关闭连接会产生内存泄露
MS的FAQ中介绍过次问题
更新到2.6版就没问题了
 
可我用的是Oracle公司的原生ADO:OLEProvider 8.1.7.2.0
不是微软的ADO引擎
 
你的服务程序中的东西没有释放完
 
ADO频繁打开关闭连接会产生内存泄露
MS的FAQ中介绍过次问题
更新到2.7版就没问题了
ADO频繁打开关闭连接会产生内存泄露
MS的FAQ中介绍过次问题
更新到2.7版就没问题了
 
to ldzj2000
ORACLE提供的是PROVIDER
还有很多用的还是MS的
你有没有实验一下??
或者将ADO部分移到一个数据模块中
保证连接始终的打开的
 
注意使用完的ADOQUERY之内的东西要及时关闭,还有定义的东西要及时关闭或释放掉。
我之前写了时实行情的程序,开始用内存20M(主要在内存里计算),后来仔细调整,检查
最后只用7M。
 
怎么解决的?我用的是socketconnection,服务器端是ADO的方式,服务程序在我每socketconnection.appserver.functionname()一次就涨一次,关闭了客户端,都不降下来。
e_mail:yongz125@sohu.com
 
难道这个问题真得无解吗?我已经有点丧失信心了[:(]
 
^_^,我用三层,连接的是上百万的条数据表(200多指标)和13个子表,sql server 数据库
客户端调用后,服务器内存完全可以控制。至于方法,^_^,第一次回答问题,没分不说。
 
ADO引擎和ADO驱动根本就是两码事
就像楼上的几位说的先升级到ADO2.7,
然后看看有没有最新的for ORACLE的驱动,
看看还会有这个问题吗
 
我也碰到这种情况~一个最简单的三层连接,然后同时打天几个客户端,关闭后内存只加不减~~晕哦~
 
关闭后虽然服务器的所占的内存会下降,恢复到几百K,可是一有新的连接,可上就变成几M了~这个问题解决呀~
 
应该不关ADO什么事,就是只有一个RemoteDataModule,也会导致这个问题出现的,大虾们不信就自己试试
 
你可以写一个简单的代码,统计RDM的数量,然后开关一定数量的客户端后,看RDM的总数是否正确,如果不正确,那么估计是RDM没有正常释放导致的.
 
最近我也一直被这个给困扰着呢顶
 
如果客户端巨多,使用session pooling技术能有效的减少资源开支。
 
我也遇到了,关注!我的系统虚拟内存到100多M了。内存峰值80M,连接客户端20-30个,操作非常频繁
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
631
import
I
I
回复
0
查看
418
import
I
后退
顶部