小编jrw*_*jrw的帖子

在 .NET 7 上初始运行时 for 循环的性能问题

我正在开发一个性能敏感的应用程序,并考虑从 .NET 6 迁移到 .NET 7。

在比较这两个版本的过程中,我发现 .NET 7 在初始运行时执行 for 循环的速度较慢。

测试是使用两个具有相同代码的独立控制台应用程序完成的,一个在 .NET 6 上,另一个在 .NET 7 上,在任何 CPU 上以发布模式运行。

测试代码:

using System.Diagnostics;

int size = 1000000;
Stopwatch sw = new();

//create array
float[] arr = new float[size];
for (int i = 0; i < size; i++)
    arr[i] = i;

Console.WriteLine(AppDomain.CurrentDomain.SetupInformation.TargetFrameworkName);

Console.WriteLine($"\nForLoop1");
ForLoop1();
ForLoop1();
ForLoop1();
ForLoop1();
ForLoop1();

Console.WriteLine($"\nForLoopArray");
ForLoopArray();
ForLoopArray();
ForLoopArray();
ForLoopArray();
ForLoopArray();

Console.WriteLine($"\nForLoop2");
ForLoop2();
ForLoop2();
ForLoop2();
ForLoop2();
ForLoop2();

void ForLoop1()
{
    sw.Restart();

    int sum = 0;
    for (int …
Run Code Online (Sandbox Code Playgroud)

c# performance .net-7.0

3
推荐指数
1
解决办法
341
查看次数

标签 统计

.net-7.0 ×1

c# ×1

performance ×1