ar
Feedback
Библиотека задач по C# | тесты, код, задания

Библиотека задач по C# | тесты, код, задания

الذهاب إلى القناة على Telegram

Задачи и тесты по C# для тренировки и обучения. По рекламе: @proglib_adv Учиться у нас: https://proglib.io/w/05448a24 Для обратной связи: @proglibrary_feeedback_bot Наши каналы: https://t.me/proglibrary/9197

إظهار المزيد
5 019
المشتركون
+424 ساعات
+37 أيام
-130 أيام
أرشيف المشاركات
Что делает await Task.Yield()? 👾 — Переносит работу на отдельный поток пула 👍 — Отдаёт управление планировщику и асинхронно продолжит после yield (в текущем контексте, если он есть); не offload’ит работу 🥰 — Усыпляет поток на один квант ⚡️ — Гарантирует переключение на UI-поток Библиотека задач по C#

Что вызовет await using у типа, реализующего и IDisposable, и IAsyncDisposable? 👾 — Сначала Dispose(), затем DisposeAsync(). 👍 — Только DisposeAsync(). 🥰 — Только Dispose(). ⚡️ — Зависит от JIT, случайный выбор.

Что верно про BackgroundService в .NET? 👾 — Это таймер, который сам перезапускает приложение при сбое 👍 — Базовый класс для IHostedService: реализуете долгоживущую работу в ExecuteAsync(CancellationToken), отмена через stoppingToken 🥰 — Запускается только по расписанию Cron ⚡️ — Обязателен в ASP.NET Core для всех контроллеров Библиотека задач по C#

Чем BackgroundService отличается от IHostedService? 👾 — Предназначен только для таймеров 👍 — Это базовый класс с циклом ExecuteAsync; IHostedService — лишь интерфейс Start/Stop без цикла 🥰 — Запускается только в Debug ⚡️ — Не поддерживает отмену CancellationToken Библиотека задач по C#

Как логировать в Microsoft.Extensions.Logging с минимумом аллокаций на горячем пути? 👾 — Интерполяция строк: $"User {id} logged in" 👍 — LoggerMessage.Define/DefineScope с кэшированными делегатами (структурированное логирование) 🥰 — Console.WriteLine — самый лёгкий вариант ⚡️ — Создавать новый EventSource на каждое сообщение Библиотека задач по C#

📊 Задача с собеседования Имеются данные о продажах за последние 12 месяцев. Требуется оценить наличие линейной зависимости м
📊 Задача с собеседования
Имеются данные о продажах за последние 12 месяцев. Требуется оценить наличие линейной зависимости между количеством заключённых сделок и объёмом выручки, а также построить прогноз выручки при достижении 150 сделок.
Если не понимаете с какой стороны подступиться к задаче, то пора подтянуть математику. 🎓 Именно этому посвящен курс экспресс-курс «Математика для Data Science» от Proglib Academy: — работа с векторами и матрицами; — линейная регрессия и метод наименьших квадратов; — вероятности, распределения, статистика; — и многое другое. ⏳ Старт: 4 декабря 🔥 Скидка: 40% до конца ноября 👉 Подключиться к курсу

Как сделать «асинхронный lock» вокруг критической секции? 👾 — lock работает через await 👍 — await semaphore.WaitAsync() с SemaphoreSlim(1, 1) и try/finally Release() 🥰 — Monitor.Enter/Exit поддерживает await ⚡️ — Interlocked гарантирует эксклюзивный доступ ко всей секции Библиотека задач по C#

Что произойдет, если попытаться присвоить значение переменной readonly вне конструктора? 👾 — Ошибка компиляции 👍 — Ошибка выполнения 🥰 — Переменная будет изменена ⚡️ — Переменная станет null Библиотека задач по C#

🖤 ЧЕРНАЯ ПЯТНИЦА: СКИДКА 40% Что общего между Black Friday и подготовкой к собесам? Оба случаются раз в год, и оба нельзя пр
🖤 ЧЕРНАЯ ПЯТНИЦА: СКИДКА 40% Что общего между Black Friday и подготовкой к собесам? Оба случаются раз в год, и оба нельзя пропустить! 😎 🔥 Курсы со скидкой 40% до конца ноября: 🐍 Python 📐 Математика 🤖 AI 🔢 Алгоритмы и структуры Пока другие покупают кофемашины и телевизоры, инвестируй в себя📈

Чем опасен Task.Factory.StartNew по сравнению с Task.Run для offload CPU? 👾 — Он всегда запускает работу в новом процессе 👍 — Наследует TaskScheduler.Current, не разворачивает вложенные задачи, часто требует опций/Unwrap; для фоновой работы предпочтителен Task.Run (ThreadPool, подходящие опции) 🥰 — Он быстрее и безопаснее во всех случаях ⚡️ — Он автоматически применяет ConfigureAwait(false) Библиотека задач по C#

Чем IQueryable<T> отличается от IEnumerable<T>? 👾 — IQueryable всегда быстрее и работает только в памяти 👍 — IQueryable строит дерево выражений для провайдера и может выполняться удалённо (БД); IEnumerable перечисляет в памяти 🥰 — Они идентичны; различий нет ⚡️ — IEnumerable поддерживает async, а IQueryable — нет Библиотека задач по C#

Что даёт record struct по сравнению с обычным struct? 👾 — Делает тип ссылочным 👍 — Генерирует структурное равенство, with-копирование и Deconstruct, оставаясь значимым типом 🥰 — Запрещает изменяемые поля ⚡️ — Автоматически реализует IDisposable Библиотека задач по C#

Что гарантирует readonly struct? 👾 — Что структура хранится только на стеке 👍 — Все поля readonly; методы не могут изменять this, компилятор предотвращает записи и избегает лишних defensive copies для in 🥰 — Автоматическую реализацию IEquatable<T> ⚡️ — Что экземпляры нельзя боксить Библиотека задач по C#

Почему Task.Result/.Wait() могут «вешать» UI/ASP.NET classic? 👾 — Потому что Task требует STA-поток 👍 — Из-за захвата SynchronizationContext: продолжение ждёт UI-поток, который блокирует синхронное ожидание 🥰 — Потому что GC останавливает мир на ожидании ⚡️ — Потому что Result всегда делает бесконечный spinwait Библиотека задач по C#

Зачем помечать override как sealed? 👾 — Чтобы запретить вызов из другого домена 👍 — Чтобы запретить дальнейшее переопределение и дать JIT шанс де-виртуализировать/инлайнить метод 🥰 — Чтобы сделать метод static ⚡️ — Это обязательно для всех virtual в Release Библиотека задач по C#

Каковы отличия между Finalize и Dispose? Dispose предоставляет явный контроль над ресурсами, которые использует объект, в то время как Finalize работает неявно и управляется сборщиком мусора. Библиотека задач по C#

Операторы присваивания не могут быть перегружены. 👍 — Правда 👾 — Ложь Библиотека задач по C#

Что выведет код? 👾 — 0 👍 — No value 🥰 — null ⚡️ — Error Библиотека задач по C#
Что выведет код? 👾 — 0 👍 — No value 🥰 — null ⚡️ — Error Библиотека задач по C#

Что выведет код? 👾 — 0 👍 — No value 🥰 — null ⚡️ — Error Библиотека задач по C#
Что выведет код? 👾 — 0 👍 — No value 🥰 — null ⚡️ — Error Библиотека задач по C#

Что важно для ключей Dictionary<TKey, TValue> при TKey-структуре? 👾 — Переопределять только ToString() 👍 — Иммутабельность и корректные Equals/GetHashCode без зависимости от изменяемых полей 🥰 — Разрешить менять поля после вставки — хеш пересчитается автоматически ⚡️ — Достаточно реализовать IComparable<T> Библиотека задач по C#