⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_27363.htm

📁 vc
💻 HTM
字号:
<p>
序号:27363 发表者:apple_caro 发表日期:2003-01-10 16:41:20
<br>主题:Out of menory? 请教[急]
<br>内容:我写了一个application, 这个程序是一天24小时都在运行的. <BR><BR>差不多几个小时以后, 用系统其他程序(比如ie)的时候就会出现 out of memory 的问题... 而且application 的window 的 status bar 就不再是蓝色,变成白色.... <BR><BR>请问有那位高手会解决这个问题啊? <BR><BR>我的猜测是: 1)处理图像时用了一些large size的 array, 我的做法是: 在 method 里面出现的 array在 return前free() 掉; global array 就那么留着... <BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2)因为要画实时图表,可能会不会2秒就用invalidateRect(..)refresh... 时间长了会耗费内存?<BR><BR>不知道是不是这些原因啊...<BR><BR>麻烦各位帮我看看这个问题怎么解决呢..<BR><BR>谢谢谢谢!<BR><BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:bb 回复日期:2003-01-10 16:47:31
<br>内容:可能OnDraw函数中的GDI对象没有释放。<BR><BR>一般用<BR><BR>CGDIObject obj, *oldobj; (CPen, CFont, ....)<BR>....<BR>oldobj=pDC-&gt;SelectObject(&amp;obj);<BR> use obj to draw somthing<BR> ....<BR>pDC-&gt;SelectObject(oldobj); //用完后,select oldobj,否则GDI对象不能释放。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:bird 回复日期:2003-01-10 16:56:03
<br>内容:你的程序有内存泄露的现象了!<BR>打开任务管理器,运行你的程序,看看内存是不是一直在涨??
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:apple_caro 回复日期:2003-01-10 16:57:17
<br>内容:楼上的说的很有道理, 我确实没有oldobj...:$<BR><BR>可是我的小半ondraw 是用vc++ 6 generate 出来的, 里面好像没有GDI ya,也没有CGDIObject obj, *oldobj;...OnDraw 里面直接用的 CPen p1.... pDC-&gt;SelectObject(p1)....
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:bb 回复日期:2003-01-10 17:11:59
<br>内容:GDIObj是泛指所有的GDI对象,如CPen, CBrush, CBitmap, CFont,.....<BR><BR>例如你程序中应:<BR>CPen p1, *oldPen;<BR><BR>p1.Create(....);<BR>oldPen=pDC-&gt;SelectObject(&amp;p1);<BR>use p1<BR>....<BR><BR>pDC-&gt;SelectObject(oldPen); //free p1<BR><BR><BR> 
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -