GDI占用问题,大家帮我解答下!
问题1:如何有效的降低GDI的使用数,用GDIPool?
问题2:
这样写代码会增加程序中GDI(Pen和Brush)的个数吗?
问题3:我用了GDIPool来保存同样的CPen对象,当再有需要的地方,就去GDIPool中get,如果GDIPool中没有 再分配。
结果我做了测试,每次都可以从GDIPool中得到,但CPen的使用数还是很多,各位帮我解决下啊!
问题2:
CPen pen( PS_SOLID, 0, clrArrow );
CBrush* pOldBrush = dc.SelectObject( &brush );
CPen* pOldPen = dc.SelectObject( pen );
dc.Polygon( arPoints, POINTS_COUNT );
dc.SelectObject( pOldPen );
dc.SelectObject( pOldBrush );
这样写代码会增加程序中GDI(Pen和Brush)的个数吗?
问题3:我用了GDIPool来保存同样的CPen对象,当再有需要的地方,就去GDIPool中get,如果GDIPool中没有 再分配。
结果我做了测试,每次都可以从GDIPool中得到,但CPen的使用数还是很多,各位帮我解决下啊!
...全文
相关推荐
GDI解决图像有锯齿的问题
本主题主要探讨的是如何通过编程实现抗锯齿功能,特别是使用GDI(Graphics Device Interface)图形设备接口来解决这一问题。
【C++软件调试技术】C++软件开发维护过程中典型软件异常问题的排查与总结
本文以问答的方式进行展开,罗列了C++软件日常开发和维护中遇到的多个软件调试问题及有代表性的场景,给出详细的处置思路和处理办法,以供大家借鉴和参考。
64位GDI泄露检测工具
当程序创建大量GDI对象但未能及时关闭或释放,就会占用系统资源,严重时可能导致系统响应变慢甚至崩溃。通过使用GDI泄露检测工具,开发者可以及时发现并解决这类问题,提高软件的稳定性和效率。
GDI泄露检测工具
创建了GDI对象但未释放:当应用程序创建GDI对象后,如果没有调用相应的释放函数(如DeleteObject),该对象将占用系统资源直到进程结束。2.
GDIndicator-GDI泄露测试工具及使用说明
**GDI泄露** 是指在程序运行过程中,由于未能正确释放GDI对象(如位图、画刷、字体等),导致这些对象在系统中持续占用资源。


