日期:2014-05-17  浏览次数:20837 次

关于多线程的内存问题
本帖最后由 waskiz 于 2013-06-17 15:23:33 编辑
每当我调用下面标识的这句话
int count = CurProcess.Threads.Count;//1就是这句话有问题;// 
的时候,内存就会每2秒彪升200K,但是当我吧这句话删除后,内存就基本平稳了,我想知道为什么呢?各位大侠,小弟刚接触线程,所以不懂。请各位给我解析下,可以吗?
//获取内存负载信息
        private string GetSysMemRunStatus()
        {
            Process CurProcess;
            CurProcess = System.Diagnostics.Process.GetCurrentProcess();//当前进程
            int count = CurProcess.Threads.Count;//1就是这句话有问题;// 
            string szProcInfo = String.Format("线程:{0},物理内存:{1}KB ,虚拟内存:{2}KB\r\n", count, count, count);// CurProcess.Threads.Count, CurProcess.WorkingSet / 1024, CurProcess.VirtualMemorySize / 1024); //虚拟内存大小 
            //string szProcInfo = "";
            CurProcess.Dispose();//
            return szProcInfo;
        }

------解决方案--------------------
是不是进行了循环调用了?