用dotTace Performance 分析.net程序性能(续)--分析Web站点

昨天试了一下用dotTrace对Console程序进行性能分析,今天试一下web站点的。

1.先上代码

 

using System.Text;
using System.Web.Mvc;

namespace MvcApplication2.Controllers
{
    public class HomeController : Controller
    {

        public ActionResult Test()
        {

            MakeString();

            MakeStringBuilder();

            return Content("ok!");

        }

        private void MakeString()
        {
            var str = string.Empty;
            for (int i = 0; i < 100; i++)
            {
                for (int j = 0; j < 100; j++)
                {
                    str += "i=";
                    str += i;
                    str += " j=";
                    str += j;
                }
            }
        }

        private void MakeStringBuilder()
        {

            var str = new StringBuilder();
            for (int i = 0; i < 100; i++)
            {
                for (int j = 0; j < 100; j++)
                {
                    str.Append("i=");
                    str.Append(i);
                    str.Append(" j=");
                    str.Append(j);
                }
            }

        }


    }
}


2.发布网站

 


3.启动dotTrace,选择File->Profile->WebDev Application

4.配置Profiler


4.点击"Run",启动Asp.net Development Server

右键点击图片,选择"在web浏览器中打开"


5.点击dotTrace中"Get SnapShot",得到程序的运行"日志"


比较MakeString 与 MakeStringBuilder 两个方法的运行时间差。

这也是我们经常所说的,不要在大量的循环中使用字符串(string)拼接,因为string类型在.NET中是一个特殊的引用类型,它本身不可改变。

posted on 2012-11-07 11:04  HTTP500  阅读(190)  评论(0编辑  收藏  举报