通过任务管理器观察到的内存使用数增加,是否就意味着有内存泄露?该怎么解决

通过任务管理器观察到的内存使用数增加,是否就意味着有内存泄露?
我写了个小程序,有两个线程.程序的主要功能,是通过Web   Service查询数据,查询操作是由工作线程来完成的.

程序执行过程中,我通过任务管理器来监视程序使用资源的情况.监视发现,每次执行查询操作时,GDI对象,句柄数和内存使用都会增加.执行完成之后,GDI对象,句柄数会恢复到查询前的状态,但是内存使用数却保持增加后的数量不变,并且,每次查询,内存使用数都会增加(第一次查询时,增加的比较多,以后没次增加4K).

不知道这是否正常?这样下去,我多查询几次,那程序岂不是把内存都吃光了?

大家给点建议,这是不是就是内存泄露?该怎么去检查到底是哪出了问题?

------解决方案--------------------
应该是有些泄漏。
------解决方案--------------------
vc在debug时有检测内存泄露的功能。
------解决方案--------------------
用BoundsChecker 在DEBUG下看看就知道了.运行一下,然后关闭你的程序,它就会把所有内存泄露,句柄泄露等各种问题体现出来.
------解决方案--------------------
得长时间观察,如果一直加,则必须有memory leak!
------解决方案--------------------
不一定,因为任务管理器观察到的内存是你程序当前用到的工作集,不是同一个概念,那是操作系统调配的。但是如果通过任务管理器观察到的内存持续增加,一般来说就是你的程序有内存泄露了。一般程序如果有内存泄露的话,如果长时间运行的话,会越来越慢。判断程序有没有内存泄露的办法,一般是通过VC Debug模式下自带的方法或者用一些专门的工具来检测,比较好的工具是Bounds Checker.
------解决方案--------------------
数据库操作每次打开以后关闭