关于C#的性能问题一:很奇怪的 for循环,求解释
代码:
string str =string.Empty;
Stopwatch watch = new Stopwatch();
watch.Start();
for (int i = 0; i < 10000 * 10000; i += 1)
{
str = "a"; ;
}
watch.Stop();
textBox1.Text += ("用时:" + watch.ElapsedMilliseconds.ToString() + "毫秒\r\n");
结果:
用时:386毫秒
代码:
Stopwatch watch = new Stopwatch();
watch.Start();
for (int i = 0; i < 10000 * 10000; i += 1)
{
string str = "a"; ;
}
watch.Stop();
textBox1.Text += ("用时:" + watch.ElapsedMilliseconds.ToString() + "毫秒\r\n");
结果:
用时:431毫秒
代码:
for (int x = 0; x < 2; x++)
{
Stopwatch watch = new Stopwatch();
watch.Start();
for (int i = 0; i < 10000 * 10000; i += 1)
{
string str = "a"; ;
}
watch.Stop();
textBox1.Text += ("用时:" + watch.ElapsedMilliseconds.ToString() + "毫秒\r\n");
}
结果:
用时:393毫秒
用时:393毫秒
代码:
for (int xx = 0; xx < 2; xx++)
{
for (int x = 0; x < 2; x++)
{
Stopwatch watch = new Stopwatch();
watch.Start();
for (int i = 0; i < 10000 * 10000; i += 1)
{
string str = "a"; ;
}
watch.Stop();
textBox1.Text += ("用时:" + watch.ElapsedMilliseconds.ToString() + "毫秒\r\n");
}
}
结果:
用时:431毫秒
用时:431毫秒
用时:431毫秒
用时:432毫秒
代码:
for (int xxx = 0; xxx < 2; xxx++)
{
for (int xx = 0; xx < 2; xx++)
{
for (int x = 0; x < 2; x++)
{
Stopwatch watch = new Stopwatch();
watch.Start();
for (int i = 0; i < 10000 * 10000; i += 1)
{
string str = "a"; ;
}
watch.Stop();
textBox1.Text += ("用时:" + watch.ElapsedMilliseconds.ToString() + "毫秒\r\n");
}
}
}
结果:
用时:389毫秒
用时:396毫秒
用时:392毫秒
用时:390毫秒
用时:389毫秒
用时:390毫秒
用时:389毫秒
用时:391毫秒
这个性能和循环数量好像无关,但和奇偶有关呀????这是为什么呀
...全文
相关推荐
C#大作业四次作业---w界面奇奇怪怪的w
俺的大作业!
Ordina-XMLParser:定制文件解析器,用于从奇怪的XML文件中提取数据。 使用C#中的XmlReader在Visual Studio中制作
Ordina-XMLParser 定制文件解析器,用于从奇怪的XML文件中提取数据。 使用C#中的XmlReader在Visual Studio中制成。 开发人员说明 除了Ordina给我们的XML文件之外,此文件解析器将无法在任何其他XML文件上使用。 它非常适合我们当前拥有的用例。
奇怪的大冒险源码
该资源是奇怪的大冒险一部分源码,图片资源,以及游戏逻辑,对初级中级程序猿的成长有一定的帮助。
浅谈C#中的Async和Await的用法详解
主要介绍了浅谈C#中的Async和Await的用法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
c# Random快速连续产生相同随机数的解决方案
在写数独基类的时候为了产生随机数的时候遇到奇怪的问题


