> php教程 > php手册 > 본문

C#、PHP与NodeJs性能测试对比

WBOY
풀어 주다: 2016-06-06 19:50:50
원래의
2033명이 탐색했습니다.

namespace Benchmark { using System ; using System.Web ; using System.Web.UI ; using System.Threading.Tasks ; public partial class Default : System. Web . UI . Page { Randomrnd = null ; public void Page_Load ( object sender,EventArgse ) { /

namespace Benchmark

{

    using System;

    using System.Web;

    using System.Web.UI;

    using System.Threading.Tasks;

 

    public partial class Default : System.Web.UI.Page

    {

        Random rnd=null;

        public void Page_Load(object sender, EventArgs e)

        {

            //RegisterAsyncTask(new PageAsyncTask(PerformIOasync,PerformIOasync,null,null));

            rnd = new Random ();

            //Task.Run (new Action (PerformIOasync));

            PerformIOasync ();

        }

 

        public async void PerformIOasync()

        {

            string s=""; //generate a random string of 108KB and a random filename

            string fname = rndchar() + rndchar() + rndchar() + rndchar() +".txt";

            for(int i=0;i108000;i++)

            {

                char ch=rndchar();

                s += ch;

            }

 

            //write s to a file

            //file_put_contents($fname,$s);

 

            var slowTask1 =  Taskstring>.Factory.StartNew(()=> WriteToDisk(fname,s));

 

            await slowTask1;

 

            var SlowTask2 = Taskstring>.Factory.StartNew(()=> ReadFromDisk(fname,s));

 

            await SlowTask2;

 

            Response.Write(SlowTask2.Result.ToString());

        }

 

        private string WriteToDisk(string fname, string s){

            System.IO.File.WriteAllText (AppDomain.CurrentDomain.BaseDirectory + fname, s);

            return "";

        }

 

        private string ReadFromDisk(string fname, string s){

            return System.IO.File.ReadAllText (AppDomain.CurrentDomain.BaseDirectory + fname);

        }

 

        private char rndchar()

        {

            return (char)rnd.Next (65112);

        }

    }

}

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿