怎样解决GDI资源不能及时回收的问题?
我作了一个程序,有大量的绘图操作,在运行过程中GDI资源逐渐减少直至程序不能运行,但在程序不能运行之间退出程序,就发现GDI资源回到程序运行前的值。
请教高手后,对几乎每个GDI对象在它被释放之间都强制调用了DeleteObject()方法,以确保GDI资源被及时释放。再次运行程序,发现GDI资源减少速度明显降低,但仍然在减少,可能是上述强制调用没有作全。
在这里我有下列几个问题:
1.GDI资源分配和回收机制是怎样的?
2.DeleteObject()调用是否是必需的?
3.有没有什么办法一次性回收所有已经没用的GDI资源,就象程序退出时所作的一样?