Что нового в .NET 6?

Еще пару месяцев назад вышла предварительная версия платформы .NET 6.

Опишу очень краткую выжимку


1. Версия 6 - ЛТС, с поддержкой на 3 года

2. Добавили поддержку Android, iOS,  Mac Catalyst & Apple Silicon, Windows Arm64

3. Добавили мультиплатформенную UI, на которой можно писать для Android, iOS, macOS, и Windows. Основана, естественно, на замарине

4. Теперь на Blazor можно будет писать десктопные приложение. И таки должно быть быстрее Электрона.

5. "Fast inner loop". Обещают ускорить сборку проектов. И сделать хот релоад при изменении исходников во время отладки.

6. В cli добавили "файлы ответов", содержащие набор аргументов командной строки. Для чего: можно превышать лимит длины строки в терминале

7. Добавили новое Math API. SinCos - одновременно вычисляет синус и косинус. ReciprocalEstimate и ReciprocalSqrtEstimate  для вычисления 1/x и 1/Sqrt(x) соответственно.

8. Clamp, DivRem, Min, Max, Abs и Sign теперь поддерживают nint и nuint. DivRem возвращает кортеж

9. Portable thread pool. Пул потоков теперь реализован как управляемый и будет использоваться по умолчанию. Кому не понравится, можно будет отключить COMPlus_ThreadPool_UsePortableThreadPool = 0 (но это ненадолго, в будущем уберут поддержку старого пула потоков)

10. Добавили поддержку однофайлового приложения для Windows и MacOS. Теперь можно билдить один файл, нет необходимости во временных каталогах, будет содержать все зависимости, в общем самодостаточный файл.

11. Добавлена PriorityQueue

12. Добавлено новое unsafe API - CollectionsMarshal.GetValueRef. Ускорит изменение значений структур в словарях.


Взято отсюда

https://devblogs.microsoft.com/dotnet/announcing-net-6-previ...

https://devblogs.microsoft.com/dotnet/announcing-net-6-previ...

https://devblogs.microsoft.com/dotnet/announcing-net-6-previ...