前面循环几十次(大概半个小时这样) 用起来都没问题,可是用了半个小时左右,就判断不到 那一点的颜色了,然后我断电调试,发现程序还是在运行的,调试的时候到判断颜色的地方,判断出那点是255,255,255也就是白色。
主要代码如下
当程序失效的时候我调试过 前面没问题 当到了这个地方的时候 C是=0;代码如下
6 个解决方案
#1
资源用后要记得释放掉, 半小时后可能是出错了, 查看任务管理器中文件程序占用的内存数,句柄数,线程数是否异常.
#2
那请问我该怎么做呢?每隔一段时间就释放吗?顺便请问下 怎么释放呢?
#3
我查到原因了 好像是
IntPtr hdc = GetDC(new IntPtr(0));
引起的···那我想请问下 这个 怎么释放内存?
IntPtr hdc = GetDC(new IntPtr(0));
引起的···那我想请问下 这个 怎么释放内存?
#4
我查到原因了 好像是
IntPtr hdc = GetDC(new IntPtr(0));
引起的···那我想请问下 这个 怎么释放内存?
#5
既然知道用GetDC,那怎么会不知道用ReleaseDC呢.
[System.Runtime.InteropServices.DllImportAttribute("user32.dll", EntryPoint = "ReleaseDC")]
public static extern int ReleaseDC(System.IntPtr hWnd,System.IntPtr hDC);
#6
我也是个新手···什么东西都会点皮毛···这2天才接触这块的···所以不懂·谢谢你哈~
#1
资源用后要记得释放掉, 半小时后可能是出错了, 查看任务管理器中文件程序占用的内存数,句柄数,线程数是否异常.
#2
那请问我该怎么做呢?每隔一段时间就释放吗?顺便请问下 怎么释放呢?
#3
我查到原因了 好像是
IntPtr hdc = GetDC(new IntPtr(0));
引起的···那我想请问下 这个 怎么释放内存?
IntPtr hdc = GetDC(new IntPtr(0));
引起的···那我想请问下 这个 怎么释放内存?
#4
我查到原因了 好像是
IntPtr hdc = GetDC(new IntPtr(0));
引起的···那我想请问下 这个 怎么释放内存?
#5
既然知道用GetDC,那怎么会不知道用ReleaseDC呢.
[System.Runtime.InteropServices.DllImportAttribute("user32.dll", EntryPoint = "ReleaseDC")]
public static extern int ReleaseDC(System.IntPtr hWnd,System.IntPtr hDC);
#6
我也是个新手···什么东西都会点皮毛···这2天才接触这块的···所以不懂·谢谢你哈~