监视方法的运行时间,内存占用--------C#

运行时间计算

System.Diagnostics.Stopwatch watch = new System.Diagnostics.Stopwatch();
watch.Start();  //开始监视代码运行时间
//需要测试的代码
watch.Stop();  //停止监视
TimeSpan timespan = watch.Elapsed;  //获取当前实例测量得出的总时间
System.Diagnostics.Debug.WriteLine("打开窗口代码执行时间:{0}(毫秒)", timespan.TotalMilliseconds);  //总毫秒数

计算内存分配

  /// <summary>
        /// 使用方法
        /// </summary>
        /// <param name="args"></param>
        static void Main(string[] args)
        {
            MemoryWatcher watcher = new MemoryWatcher();
            watcher.startWatch();
            object obj = new object().GCWatch("终于释放啦");
            watcher.stoptWatch();
            Console.ReadKey();
        }

        /// <summary>
        /// 监视类
        /// </summary>
        public class MemoryWatcher
        {
            long size;
            public void startWatch()
            {
                size = 0;
                size = GC.GetTotalMemory(true);
            }
            public void stoptWatch()
            {
                var latersize = GC.GetTotalMemory(true);
                latersize = latersize - size;
                Console.WriteLine("分配内存:"+ (latersize / 1024).ToString() + "KB");
                System.Diagnostics.Debug.WriteLine("分配内存:"+(latersize/1024).ToString()+"KB");  //总毫秒数
            }
        }
时间: 2024-10-22 01:13:08

监视方法的运行时间,内存占用--------C#的相关文章

虚函数列表: 取出方法 // 虚函数工作原理和(虚)继承类的内存占用大小计算 32位机器上 sizeof(void *) // 4byte

#include <iostream> using namespace std; class A { public: A(){} virtual void geta(){ cout << "A:A" <<endl; } virtual void getb(){ cout << "A:B" <<endl; } }; class B :public A{ public: B(){} virtual void g

C# WinForm应用程序降低系统内存占用方法总结

这篇文章主要介绍了C# WinForm应用程序降低系统内存占用方法总结,本文总结了9个方法,同时给出了一个定期清理执行垃圾回收代码,需要的朋友可以参考下 背景: 微软的 .NET FRAMEWORK 现在可谓如火如荼了.但是,.NET 一直所为人诟病的就是“胃口太大”,狂吃内存,虽然微软声称 GC 的功能和智能化都很高,但是内存的回收问题,一直存在困扰,尤其是 winform 程序,其主要原因是因为.NET程序在启动时,是需要由JIT动态编译并加载的,这个加载会把所有需要的资源都加载进来,很多资

Linux下计算进程的CPU占用和内存占用的编程方法zz

https://www.cnblogs.com/cxjchen/archive/2013/03/30/2990548.html 查看RAM使用情况最简单的方法是通过/proc/meminfo.这个动态更新的虚拟文件实际上是许多其他内存相关工具(如:free / ps / top)等的组合显示./proc/meminfo列出了所有你想了解的内存的使用情况. 进程的内存使用信息也可以通过/proc/<pid>/statm 和 /proc/<pid>/status 来查看. #inclu

C# WinForm应用程序降低系统内存占用方法总结【转】

WinForm程序点用一直是个大问题,时间运行长了,越来越大,最近在网上发现个贴,试了上面方法,从进程来看,内存确实降下去了,效果还不错. 这里整理了一些网上关于Winform如何降低系统内存占用的资料,供参考: 1.使用性能测试工具dotTrace 3.0,它能够计算出你程序中那些代码占用内存较多2.强制垃圾回收3.多dispose,close4.用timer,每几秒钟调用:SetProcessWorkingSetSize(Process.GetCurrentProcess().Handle,

爱上MVC3系列~监视Action的运行时间,并提供超时记录机制

回到目录 文章出现的原因 很久没写关于MVC的文章了,原因是将关注点移向了MVVM和DDD这边,而这篇文章完全是因为公司项目的需要,因为公司网站总是不定时的502,而这由可能是程序超时所引起的,为了分析出现问题的点,所以,对action进行了监控,这个监控功能我选择了在global里注入全局的filter来实现这个功能,为了避免并发,所选择了将记录存储到cache的队列里,再通过quartZ的任务调度功能,来实现数据的IO写入或者数据库与入. 系统流程图 用代码说话 1 建立一个Filter /

实操 | 内存占用减少高达90%,还不用升级硬件?没错,这篇文章教你妙用Pandas轻松处理大规模数据

相比较于 Numpy,Pandas 使用一个二维的数据结构 DataFrame 来表示表格式的数据, 可以存储混合的数据结构,同时使用 NaN 来表示缺失的数据,而不用像 Numpy 一样要手工处理缺失的数据,并且 Pandas 使用轴标签来表示行和列. 通常用于处理小数据(小于 100Mb),而且对计算机的性能要求不高,但是当我们需要处理更大的数据时(100Mb到几千Gb),计算机性能就成了问题,如果配置过低就会导致更长的运行时间,甚至因为内存不足导致运行失败. 在处理大型数据集时(100Gb

远程监视jboss应用java内存的配置(实测) .

前言 因为最近一个项目部署在客户那边运行一个月左右就会出现java内存溢出的问题,为了时时监控java内存的情况需要,需要远程查看服务器上java内存的一些情况.在公司模拟部署了远程监视linux下项目运行的情况. 一.简单介绍两个jdk1.6自带的可视化监视工具    Jconsole:Java 6.x采用JMX方式提供了一系列监视和管理虚拟机的API,随SDK一起发布的JConsole则是采用这些API实现监控虚拟机的使用工具. JConsole能够提供被监控虚拟机的内存.线程.类的加载以及

Windbg分析高内存占用问题

1. 问题简介 最近产品发布大版本补丁更新,一商超客户升级后,反馈系统经常奔溃,导致超市的收银系统无法正常收银,现场排队付款的顾客更是抱怨声声.为了缓解现场的情况, 客户都是手动回收IIS应用程序池才能解决. 这样的后果是很严重的,接到反馈,第一时间想到的是加内存吧,这样最快.但是客户从8G-->16G-->32G,只是延长了每次奔溃的时间,但是并没有解决系统卡顿的问题.到这里,也基本猜测了问题所在了,肯定是什么东西一直在吃内存且得不到释放.这种问题,也就只能打Dump分析了. 2. 打Dum

用于监视Linux上的内存使用情况的Bash脚本

用于监视Linux上的内存使用情况的Bash脚本 2019-06-17 11:32:45作者:戴进稿源:云网牛站 在本文中,我们添加了两个shell脚本来监视Linux操作系统上的内存利用率,即用于监视Linux上的内存使用情况的Bash脚本,当系统达到给定阈值时,它将触发并发送电子邮件给你.可以参考脚本在实践中的应用:用脚本的方法解决搜狗拼音占用大量内存的问题. 方法一.Linux Bash脚本监视内存利用率并发送电子邮件 如果只想在系统达到给定阈值时通过邮件获取当前内存利用率百分比,请使用以