👨💻 ImmutableCollection и многозадачность в C#
При разработке многозадачных приложений важнейшей задачей является безопасная работа с общими данными, особенно когда несколько потоков одновременно обращаются к коллекциям.
Таким вопросом и задался наш подписчик:
Когда не стоит использовать:
• Каждый раз при изменении коллекции создается новая копия, что может снизить производительность.
• Частое создание новых коллекций может привести к большим затратам памяти. При ограниченных ресурсах может стать проблемой.
Когда ImmutableCollection — это идеальный выбор:
• Когда данные не изменяются часто
• Когда важна безопасность многозадачности
• В функциональном программировании
💬 Как вы используете
🐸 Библиотека шарписта
#междусобойчик
При разработке многозадачных приложений важнейшей задачей является безопасная работа с общими данными, особенно когда несколько потоков одновременно обращаются к коллекциям.
ImmutableCollection
помогает решить эту задачу, предоставляя коллекции, которые нельзя изменять после их создания. Но стоит ли использовать их везде?Таким вопросом и задался наш подписчик:
Как ImmutableCollection помогает при разработке многозадачных приложений? Стоит ли использовать их везде, где возможно?
Когда не стоит использовать:
• Каждый раз при изменении коллекции создается новая копия, что может снизить производительность.
• Частое создание новых коллекций может привести к большим затратам памяти. При ограниченных ресурсах может стать проблемой.
Когда ImmutableCollection — это идеальный выбор:
• Когда данные не изменяются часто
• Когда важна безопасность многозадачности
• В функциональном программировании
💬 Как вы используете
ImmutableCollection
? Поделитесь опытом в комментариях 👇#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍2
В .NET 10 Preview 6 появилась новая фича — one-shot execution для .NET-инструментов. Больше не нужно ставить глобальные или локальные tools, если нужно просто один раз запустить утилиту.
Как это работает
—
dotnet tool exec <packageId> [args]
Скачивает инструмент из NuGet, кэширует и сразу запускает.
—
dnx <packageId> [args]
Короткий алиас для удобного вызова (аналог npx в мире Node.js).
— Если рядом есть
dotnet-tools.json
→ подтянет версию из него. Если нет, то возьмёт последнюю доступную.— При первом запуске спросит подтверждение, потом будет использовать уже закешированную версию.
Пример:
# Запуск dotnet-outdated без установки
dotnet tool exec dotnet-outdated -- --version
# То же самое, но короче
dnx dotnet-outdated --version
#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1