Обложка канала

Библиотека шарписта

Полезные материалы по всему, что может быть интересно разработчику на C#.

Библиотека шарписта

3 года назад
Открыть в
Серия статей на не самые очевидные темы .NET от команды Контур продолжается. В новой части автор сравнивает между собой foreach и for. 📌Спойлер: ▪️foreach быстрее for на массивах, по крайней мере на int[]. Но unsafe-реализация for может догнать foreach. ▪️for быстрее foreach на списках, по крайней мере на List. Хотя, в .NET 7 foreach значительно ускорили. Но for он так и не догнал. ▪️Обращения к IList'у как к коллекции что с помощью for, что с помощью foreach, очень дороги на каждой итерации из-за виртуальных вызовов методов. При этом, foreach на IList'е аллоцирует объект энумератора. А ещё, foreach на IList'е деградирует на .NET 7 по сравнению с .NET 6. Более полезные выводы, бенчмарки и многое другое увидите в статье. #dotnet #csharp
Библиотека шарписта | C#, F#, .NET, ASP.NET

Серия любопытных статей для .NET-разработчика от команды Контур: Микрооптимизации: 🗄Сказка про Method as Parameter  🗄Инструменты анализа эффективности работы приложения. PerfView  🗄Пародия на замыкания  🗄yield return  🗄Сказка про For vs Foreach Про тредпул: 🗄ThreadPool.Intro  🗄ThreadPool. async/await  🗄ThreadPool.Chain Про низкоуровневое: 🗄Reciprocal throughput  🗄Сказка про Branch prediction  Разное: 🗄Сказка про Guid.NewGuid() 

Telegram