程序运行时内存占有率问题

njit_77 2014-12-25 06:48:50
WPF中调用用C++封装的dll。

dll中这样定义
#define Num 20;
static BYTE m_pFrameBuffer1[Num][2592 * 1944 * 3] ; //用于保存数据(5M)相机数据
static BYTE m_pFrameBuffer2[Num][1280 * 960 * 3] ; //用于保存数据(1.3M)


C#运行时,发现程序的内存占有率一直在增加。
只有一个相机时,增加速度不是很快。但是如果相机即预览,又回调显示图像,内存占有率会急剧增大,几秒钟超过1,000,000K(没有夸张,真实数据)。问老大,老大说可能是dll里面内存没有释放,但是我没有给它分配内存啊?

有没有人遇到过类似的问题,求助啊!!!
...全文
151 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
fcqm8888 2015-02-18
  • 打赏
  • 举报
回复
程序运行占用内存是肯定的,就看占用大小了,合理不合理的问题。
njit_77 2014-12-26
  • 打赏
  • 举报
回复
引用 1 楼 wow818wow 的回复:
C#调C++还真不好说问题在哪。你要是觉得C++有问题你可以写个控制台按C#的逻辑掉,不用显示出来,只要调接口,如果内存变化不大应该是C#那里出问题了,不要以为C#托管了内存,你就可以不用关心了。因为有些内存还是要自己释放的
先谢谢热心的回答。昨天搞到现在,发现是dll里面初始化的时候重复在初始化,改正之后没有问题了
扯淡砖家 2014-12-26
  • 打赏
  • 举报
回复
C#调C++还真不好说问题在哪。你要是觉得C++有问题你可以写个控制台按C#的逻辑掉,不用显示出来,只要调接口,如果内存变化不大应该是C#那里出问题了,不要以为C#托管了内存,你就可以不用关心了。因为有些内存还是要自己释放的

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧