.NET 9中ToList 和 ToArray 之间的性能比较

💡 原文中文,约7600字,阅读约需18分钟。
📝

内容提要

作者比较了.NET 8和.NET 9在创建不会变异的短期集合时的性能,结果显示.NET 9更快、内存效率更高。使用.NET 8作为基线,.NET 9的ToArray方法平均速度提高了30%,内存减少了55%;ToList方法平均快15%,内存占用相同。作者建议在内存中创建临时集合时使用.NET 9。

🎯

关键要点

  • .NET 9在创建不会变异的短期集合时性能更快、内存效率更高。
  • .NET 9的ToArray方法平均速度提高了30%,内存减少了55%。
  • .NET 9的ToList方法平均速度快15%,内存占用相同。
  • 测试使用了.NET Framework 4.8、.NET 7和.NET 8,结果显示.NET 8在非常大的集合中速度更快,但内存占用更多。
  • 作者建议在内存中创建临时集合时使用.NET 9。
  • 性能测试使用BenchmarkDotNet进行,测试环境为Windows 11和AMD Ryzen 7 3700X。
  • 在比较.NET 9与.NET 8的性能时,.NET 9在所有集合大小下都表现更好。
  • 结论是,在需要创建临时集合以防止多个枚举时,使用.NET 9的性能更高。
➡️

继续阅读