7684|21

60

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

wince内存泄露的问题 [复制链接]

项目要求在wince下使用RFID读卡器。本程序每隔200毫秒查询有无RFID卡来刷(发起邀请)。
现在,在程序执行期间有内存泄露。非常有规律。可以定位到就是在查询有无RFID卡来刷的某行代码导致泄露。
这行代码是执行一个SDK函数的调用。由于SDK函数的源代码我有,所以我发现该函数不应该导致内存泄露。
现在怀疑是否RFID读卡器驱动程序带来的内存泄露?

PS:泄露的内存在程序退出时可以得到回收,可一旦程序重新执行起来,系统的内存使用一下子增加了很多,都超过了之前执行关闭之前的值。—— 不知道这一点是否可以确认为驱动程序内存泄露?

最新回复

mark  详情 回复 发表于 2010-1-21 13:59
点赞 关注

回复
举报

75

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
疲劳测试,看看会不会内存不中,应用无法正常运行

CE的内存回收机制与PC有点不同的,我估计只是有内存碎片产生
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
程序运行很长时间后,会提示系统内存严重不足
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

4
 
应该是虚拟内存没有释放引起
-----------------------------
可以调用api来查询当前slot里面的可用虚拟内存的大小来确定改问题
以前碰到过类似的问题,就是这么确定的
-----------------------------
你可以到网上查一下改api,如果查不到的话,我下午给你找一下
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

5
 
可一旦程序重新执行起来,系统的内存使用一下子增加了很多,都超过了之前执行关闭之前的值。
--------我记得这样看是不准的。。他要过一阵子才能反应过来。

 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

6
 
真是热心的朋友,谢谢你。
如果真是虚拟内存没有释放,该如何解决呢?

引用 3 楼 guopeixin 的回复:
应该是虚拟内存没有释放引起
-----------------------------
可以调用api来查询当前slot里面的可用虚拟内存的大小来确定改问题
以前碰到过类似的问题,就是这么确定的
-----------------------------
你可以到网上查一下改api,如果查不到的话,我下午给你找一下
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

7
 
是要过很久吗?我是过了一阵的,还是没用


引用 4 楼 mxm1986 的回复:
可一旦程序重新执行起来,系统的内存使用一下子增加了很多,都超过了之前执行关闭之前的值。
--------我记得这样看是不准的。。他要过一阵子才能反应过来。


 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

8
 
虚拟内存不是系统自动释放?
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

9
 
引用 5 楼 m_jy163 的回复:
真是热心的朋友,谢谢你。
如果真是虚拟内存没有释放,该如何解决呢?

引用 3 楼 guopeixin 的回复:
应该是虚拟内存没有释放引起
-----------------------------
可以调用api来查询当前slot里面的可用虚拟内存的大小来确定改问题
以前碰到过类似的问题,就是这么确定的
-----------------------------
你可以到网上查一下改api,如果查不到的话,我下午给你找一下


之前在5.0项目上出现的,因为每个slot为32mb空间,我们一次会造成64kb空间的丢失,上层的ap经过很多次的操作之后,后续就会出现当前slot空间use out的情况,改为释放掉就可以了
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

10
 
做个记号
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

11
 
如何释放呢?呵呵。本人新手,还望不吝赐教。

引用 8 楼 guopeixin 的回复:
引用 5 楼 m_jy163 的回复:
真是热心的朋友,谢谢你。
如果真是虚拟内存没有释放,该如何解决呢?

引用 3 楼 guopeixin 的回复:
应该是虚拟内存没有释放引起
-----------------------------
可以调用api来查询当前slot里面的可用虚拟内存的大小来确定改问题
以前碰到过类似的问题,就是这么确定的
-----------------------------
你可以到网上查一下改api,如果查不到的话,我下午给你找一下


之前在5.0项目上出现的,因为每个slot为32mb空间,我们一次会造成64kb空间的丢失,上层的ap经过很多次的操作之后,后续就会出现当前slot空间use out的情况,改为释放掉就可以了
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

12
 
内存泄漏会导致系统死机吗?我的板子出现了死机后屏幕画面不动,但dnw又 没有任何调试信息出来
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

13
 
引用 10 楼 m_jy163 的回复:
如何释放呢?呵呵。本人新手,还望不吝赐教。

引用 8 楼 guopeixin 的回复:
引用 5 楼 m_jy163 的回复:
真是热心的朋友,谢谢你。
如果真是虚拟内存没有释放,该如何解决呢?

引用 3 楼 guopeixin 的回复:
应该是虚拟内存没有释放引起
-----------------------------
可以调用api来查询当前slot里面的可用虚拟内存的大小来确定改问题
以前碰到过类似的问题,就是这么确定的
-----------------------------
你可以到网上查一下改api,如果查不到的话,我下午给你找一下


之前在5.0项目上出现的,因为每个slot为32mb空间,我们一次会造成64kb空间的丢失,上层的ap经过很多次的操作之后,后续就会出现当前slot空间use out的情况,改为释放掉就可以了


你先找到泄露的位置,直接释放掉就行了
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

14
 
UP
 
 
 

回复

87

帖子

0

TA的资源

一粒金砂(初级)

15
 
引用楼主 m_jy163 的回复:
项目要求在wince下使用RFID读卡器。本程序每隔200毫秒查询有无RFID卡来刷(发起邀请)。
现在,在程序执行期间有内存泄露。非常有规律。可以定位到就是在查询有无RFID卡来刷的某行代码导致泄露。
这行代码是执行一个SDK函数的调用。由于SDK函数的源代码我有,所以我发现该函数不应该导致内存泄露。
现在怀疑是否RFID读卡器驱动程序带来的内存泄露?

PS:泄露的内存在程序退出时可以得到回收,可一旦程序重新执行起来,系统的内存使用一下子增加了很多,都超过了之前执行关闭之前的值。—— 不知道这一点是否可以确认为驱动程序内存泄露?




驱动里有无清缓冲的操作函数呢?有的话调用下,或者在该函数前认为将调用参数初始化一下,看看内存是否会增加,当然这是为了测试内存是不是由于输入参数产生的
 
 
 

回复

59

帖子

0

TA的资源

一粒金砂(初级)

16
 
http://topic.eeworld.net/u/20091111/16/8f1cde89-22c6-467e-a11e-8d2e5f020885.html?68418
你追踪这封帖子下去就会有结果的
自己也可以google一下,申请的内存要怎么释放
比如new后,会跟着delete,要一一对应
 
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

17
 
引用 15 楼 stoneqiang 的回复:
http://topic.eeworld.net/u/20091111/16/8f1cde89-22c6-467e-a11e-8d2e5f020885.html?68418
你追踪这封帖子下去就会有结果的
自己也可以google一下,申请的内存要怎么释放
比如new后,会跟着delete,要一一对应


顶这个~~~呵
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

18
 
程序长时间跑,尽量减少动态分配。即使你分配后释放掉也一样
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

19
 
帮顶
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

20
 
使用 CodeSnitch 检测
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表