Есть поле int _counter; инкрементируется из нескольких потоков. Требование: корректный подсчёт, минимальные накладные расходы, без блокировок. Что выбрать?
👾 — Объявить _counter как volatile и использовать ++_counter
👍 — Использовать Interlocked.Increment(ref _counter)
🥰 — Оборачивать ++_counter в lock
⚡️ — Вставить Thread.MemoryBarrier() до и после ++_counter
Библиотека задач по C#
👾 — Объявить _counter как volatile и использовать ++_counter
👍 — Использовать Interlocked.Increment(ref _counter)
🥰 — Оборачивать ++_counter в lock
⚡️ — Вставить Thread.MemoryBarrier() до и после ++_counter
Библиотека задач по C#
👍34🥰1👾1
Какое из следующих утверждений верно относительно типа «string» в C#?
👾 — Строки изменяемы
👍 — Строки являются ссылочными типами
🥰 — Строки не могут быть нулевыми
⚡️ — Ничего из вышеперечисленного
Библиотека задач по C#
👾 — Строки изменяемы
👍 — Строки являются ссылочными типами
🥰 — Строки не могут быть нулевыми
⚡️ — Ничего из вышеперечисленного
Библиотека задач по C#
👍65👾1
Что выведет код?
👾 — Event triggered!
👍 — Handler
🥰 — Error
⚡️ — Ничего из вышеперечисленного
Библиотека задач по C#
👾 — Event triggered!
👍 — Handler
🥰 — Error
⚡️ — Ничего из вышеперечисленного
Библиотека задач по C#
👾21❤1👍1🌚1
В C# структуры используются для ___ объектов, таких как мобильные телефоны, автомобили и т. д.
👾 — Легких
👍 — Тяжелых
🥰 — Дополнительных
⚡️ — Сжатых
Библиотека задач по C#
👾 — Легких
👍 — Тяжелых
🥰 — Дополнительных
Библиотека задач по C#
Please open Telegram to view this post
VIEW IN TELEGRAM
👾50👍3⚡1
Когда оправдан ValueTask?
👾 — Всегда лучше Task
👍 — Когда результат часто готов синхронно — ради уменьшения аллокаций; повторное ожидание недопустимо
🥰 — Можно ждать сколько угодно раз
⚡️ — Нужен для IAsyncDisposable
Библиотека задач по C#
👾 — Всегда лучше Task
👍 — Когда результат часто готов синхронно — ради уменьшения аллокаций; повторное ожидание недопустимо
🥰 — Можно ждать сколько угодно раз
⚡️ — Нужен для IAsyncDisposable
Библиотека задач по C#
👍43👾1
В .NET у вас есть метод, который вызывается в высоконагруженном сервисе миллионы раз в секунду. В профилировании видно, что он активно генерирует мусор, перегружая GC. Какой из подходов будет наиболее правильным для оптимизации?
👾 — Переписать метод на небезопасный код (unsafe) и работать напрямую с указателями
👍 — Использовать Span<T> и пулы объектов (ArrayPool<T>, ObjectPool<T>) для снижения количества аллокаций
🥰 — Увеличить размер heap в настройках CLR, чтобы GC срабатывал реже
⚡️ — Запустить несколько экземпляров метода параллельно, чтобы распределить нагрузку на разные потоки
Библиотека задач по C#
👾 — Переписать метод на небезопасный код (unsafe) и работать напрямую с указателями
👍 — Использовать Span<T> и пулы объектов (ArrayPool<T>, ObjectPool<T>) для снижения количества аллокаций
🥰 — Увеличить размер heap в настройках CLR, чтобы GC срабатывал реже
⚡️ — Запустить несколько экземпляров метода параллельно, чтобы распределить нагрузку на разные потоки
Библиотека задач по C#
👍38⚡2🥰2
👾41👍7🥰1
Каковы особенности переменных, доступных только для чтения?
👾 — Инициализируются во время выполнения
👍 — Могут использоваться со статическими модификаторами
🥰 — Объявляются только на уровне класа
🥱 — Все вышеперечисленное
Библиотека задач по C#
👾 — Инициализируются во время выполнения
👍 — Могут использоваться со статическими модификаторами
🥰 — Объявляются только на уровне класа
🥱 — Все вышеперечисленное
Библиотека задач по C#
🥱12👾8❤1🥰1
☝️ Уже сегодня: ИИ-агенты в продакшене — инженерный подход к интеграции LLM
Индустрия активно обсуждает потенциал нейросетей, способных автоматизировать бизнес-процессы и заменить целые отделы. Однако реальное внедрение агентов в
Сегодня в 19:00 МСК в рамках нашего курса «Разработка AI-агентов» мы проведём открытый вебинар «ИИ-агенты в продакшене: от хайпа к деньгам». Спикер — Полина Полунина, руководитель AI-направления в Альфа-Банке. Будем говорить о нейросетях с позиции жёсткой инженерии.
Разберём три реальных кейса из сурового банковского энтерпрайза, напишем и запустим агента прямо в эфире, честно обсудим грабли, на которые наступает бизнес при интеграции
Тем, кто придёт на эфир, дадим промокод AGENTS на скидку 10 000 ₽ на любой тариф курса.
👉 Занять место на вебинаре
Индустрия активно обсуждает потенциал нейросетей, способных автоматизировать бизнес-процессы и заменить целые отделы. Однако реальное внедрение агентов в
production вскрывает серьёзные проблемы: разработчикам приходится бороться с непредсказуемыми галлюцинациями моделей, нестабильными API и сложной интеграцией в существующую архитектуру.Сегодня в 19:00 МСК в рамках нашего курса «Разработка AI-агентов» мы проведём открытый вебинар «ИИ-агенты в продакшене: от хайпа к деньгам». Спикер — Полина Полунина, руководитель AI-направления в Альфа-Банке. Будем говорить о нейросетях с позиции жёсткой инженерии.
Разберём три реальных кейса из сурового банковского энтерпрайза, напишем и запустим агента прямо в эфире, честно обсудим грабли, на которые наступает бизнес при интеграции
LLM.Тем, кто придёт на эфир, дадим промокод AGENTS на скидку 10 000 ₽ на любой тариф курса.
👉 Занять место на вебинаре
⏳ Часовая готовность: создаём ИИ-агента в прямом эфире
В 19:00 МСК в рамках нашего курса «Разработка AI-агентов» стартует вебинар «ИИ-агенты в продакшене: от хайпа к деньгам». Спикер — Полина Полунина, руководитель AI-направления в Альфа-Банке.
Будет live-демо работающего агента, реальные метрики из корпоративной среды и честный разбор архитектурных граблей — без воды и «успешного успеха».
Всем зрителям эфира дадим эксклюзивный промокод AGENTS на скидку 10 000 ₽ на любой тариф курса.
👉 Занять место на вебинаре
В 19:00 МСК в рамках нашего курса «Разработка AI-агентов» стартует вебинар «ИИ-агенты в продакшене: от хайпа к деньгам». Спикер — Полина Полунина, руководитель AI-направления в Альфа-Банке.
Будет live-демо работающего агента, реальные метрики из корпоративной среды и честный разбор архитектурных граблей — без воды и «успешного успеха».
Всем зрителям эфира дадим эксклюзивный промокод AGENTS на скидку 10 000 ₽ на любой тариф курса.
👉 Занять место на вебинаре
Какова амортизированная сложность m операций union/find с union by rank + path compression?
👾 — O(m log n)
👍 — O(m α(n))
🥰 — O(mn)
🥱 — O(m)
Библиотека задач по C#
👾 — O(m log n)
👍 — O(m α(n))
🥰 — O(mn)
🥱 — O(m)
Библиотека задач по C#
👍2🥰2🥱2👾2
Зачем указывать RunContinuationsAsynchronously у TaskCompletionSource?
👾 — Чтобы продолжения выполнялись синхронно при SetResult
👍 — Чтобы не исполнять продолжения синхронно в потоке SetResult, а планировать их асинхронно, избегая дедлоков и глубоких стеков
🥰 — Чтобы запретить отмену задач
⚡️ — Чтобы обойти планировщик и ускорить завершение
Библиотека задач по C#
👾 — Чтобы продолжения выполнялись синхронно при SetResult
👍 — Чтобы не исполнять продолжения синхронно в потоке SetResult, а планировать их асинхронно, избегая дедлоков и глубоких стеков
🥰 — Чтобы запретить отмену задач
⚡️ — Чтобы обойти планировщик и ускорить завершение
Библиотека задач по C#
👍13⚡1🥰1
Когда уместно async void?
👾 — Для «fire-and-forget» в сервисах
👍 — Только для обработчиков событий; в остальном возвращайте Task
🥰 — Чтобы скрывать исключения из вызвавшего кода
⚡️ — Когда нужно вернуть значение синхронно
Библиотека задач по C#
👾 — Для «fire-and-forget» в сервисах
👍 — Только для обработчиков событий; в остальном возвращайте Task
🥰 — Чтобы скрывать исключения из вызвавшего кода
⚡️ — Когда нужно вернуть значение синхронно
Библиотека задач по C#
👍27🥰2👾1
Самый востребованный навык в ИТ в 2026-м — навык создания ИИ-агентов
Мы полностью переработали курс «Разработка AI-агентов» под реалии 2026 года. Никакой долгой теории — с самого начала пишем код. Обучать и делиться набитыми шишками будут эксперты-практики из Газпромбанка, Альфа-Банка и других бигтехов.
В программе:
— архитектура автономных систем с тестированием, ReAct-циклами и контролем токенов;
— практическая работа с актуальными фреймворками LangGraph, AutoGen, MCP и CrewAI;
— настройка продвинутого RAG для парсинга документов и точного поиска;
— внедрение решений с учётом действующего законодательства (152-ФЗ);
— дипломная работа, за основу которой можно взять свой рабочий проект или задачу, которую предложим мы.
Эксперты поделятся инсайтами из реального продакшна — тем, о чём вам никогда не расскажет ни одна нейросеть.
Ах да, чуть не забыли! Дарим промокодAGENTSWEB на скидку 10 000 рублей и два курса сверху при покупке до 15 марта 🎁
→ Стать AI-инженером
Мы полностью переработали курс «Разработка AI-агентов» под реалии 2026 года. Никакой долгой теории — с самого начала пишем код. Обучать и делиться набитыми шишками будут эксперты-практики из Газпромбанка, Альфа-Банка и других бигтехов.
В программе:
— архитектура автономных систем с тестированием, ReAct-циклами и контролем токенов;
— практическая работа с актуальными фреймворками LangGraph, AutoGen, MCP и CrewAI;
— настройка продвинутого RAG для парсинга документов и точного поиска;
— внедрение решений с учётом действующего законодательства (152-ФЗ);
— дипломная работа, за основу которой можно взять свой рабочий проект или задачу, которую предложим мы.
Эксперты поделятся инсайтами из реального продакшна — тем, о чём вам никогда не расскажет ни одна нейросеть.
Запись первого открытого вебинара, на котором мы вместе с руководителем AI-направления в Альфа-Банке Полиной Полуниной пилили агента в прямом эфире.
Ах да, чуть не забыли! Дарим промокод
→ Стать AI-инженером
❤1
Что верно про ValueTask?
👾 — Всегда быстрее Task
👍 — Можно безопасно ожидать многократно
🥰 — Ожидать можно один раз; для повторных — AsTask()
⚡️ — Экземпляры стоит кэшировать и переиспользовать
Библиотека задач по C#
👾 — Всегда быстрее Task
👍 — Можно безопасно ожидать многократно
🥰 — Ожидать можно один раз; для повторных — AsTask()
⚡️ — Экземпляры стоит кэшировать и переиспользовать
Библиотека задач по C#
🥰27⚡1
Кажется, мы окончательно перешли от игрушек к суровому AgentOps
Приглашаем на наш обновлённый курс по разработке ИИ-агентов. Никакой воды про «будущее нейросетей», только инженерный подход.
На курсе мы:
— пошагово строим готовые системы на
— настраиваем кэширование и роутинг, чтобы бот не сожрал токены;
— разбираемся со стейтом, учимся дебажить через time-travel и прикручиваем human-in-the-loop;
— выводим RAG в прод так, чтобы безопасники не завернули архитектуру из-за 152-ФЗ.
В пекло скучные лекции про общую инфраструктуру — сразу фокусируемся на агентных фреймворках и написании кода. Занятия ведут бывалые лиды из Газпромбанка и Альфы, набившие шишки на реальных задачах.
Сегодня последний день, когда можно забрать курс по старым ценам. Базовый тариф сейчас стоит 49 000 ₽ (вместо 62 990 ₽), продвинутый трек — 99 000 ₽ (вместо 124 990 ₽). Если не хочется отдавать всю сумму сразу, есть рассрочка. Торопитесь — на потоке осталось всего 5 мест!
→ Зафиксировать цену и перейти к сборке своих агентов
Приглашаем на наш обновлённый курс по разработке ИИ-агентов. Никакой воды про «будущее нейросетей», только инженерный подход.
На курсе мы:
— пошагово строим готовые системы на
LangGraph, CrewAI и MCP;— настраиваем кэширование и роутинг, чтобы бот не сожрал токены;
— разбираемся со стейтом, учимся дебажить через time-travel и прикручиваем human-in-the-loop;
— выводим RAG в прод так, чтобы безопасники не завернули архитектуру из-за 152-ФЗ.
В пекло скучные лекции про общую инфраструктуру — сразу фокусируемся на агентных фреймворках и написании кода. Занятия ведут бывалые лиды из Газпромбанка и Альфы, набившие шишки на реальных задачах.
Кстати, на днях мы пилили агента в прямом эфире, если пропустили — есть запись вебинара.
Сегодня последний день, когда можно забрать курс по старым ценам. Базовый тариф сейчас стоит 49 000 ₽ (вместо 62 990 ₽), продвинутый трек — 99 000 ₽ (вместо 124 990 ₽). Если не хочется отдавать всю сумму сразу, есть рассрочка. Торопитесь — на потоке осталось всего 5 мест!
→ Зафиксировать цену и перейти к сборке своих агентов
Когда уместно async void?
👾 — Для «fire-and-forget» в сервисах
👍 — Только для обработчиков событий; в остальном возвращайте Task
🥰 — Чтобы скрывать исключения из вызвавшего кода
⚡️ — Когда нужно вернуть значение синхронно
Библиотека задач по C#
👾 — Для «fire-and-forget» в сервисах
👍 — Только для обработчиков событий; в остальном возвращайте Task
🥰 — Чтобы скрывать исключения из вызвавшего кода
⚡️ — Когда нужно вернуть значение синхронно
Библиотека задач по C#
👍28🥰1👾1
Зачем использовать IHttpClientFactory вместо создания нового HttpClient на каждый запрос?
👾 — Чтобы отключить DNS-кеш и ускорить повторы
👍 — Чтобы переиспользовать SocketsHttpHandler, избежать socket exhaustion и централизовать политики таймаутов/ретраев
🥰 — Чтобы все запросы шли через один и тот же IP
⚡️ — Чтобы сделать запросы синхронными и без аллокаций
Библиотека задач по C#
👾 — Чтобы отключить DNS-кеш и ускорить повторы
👍 — Чтобы переиспользовать SocketsHttpHandler, избежать socket exhaustion и централизовать политики таймаутов/ретраев
🥰 — Чтобы все запросы шли через один и тот же IP
⚡️ — Чтобы сделать запросы синхронными и без аллокаций
Библиотека задач по C#
👍27👾1
Зачем помечать override как sealed?
👾 — Чтобы запретить вызов из другого домена
👍 — Чтобы запретить дальнейшее переопределение и дать JIT шанс де-виртуализировать/инлайнить метод
🥰 — Чтобы сделать метод static
⚡️ — Это обязательно для всех virtual в Release
Библиотека задач по C#
👾 — Чтобы запретить вызов из другого домена
👍 — Чтобы запретить дальнейшее переопределение и дать JIT шанс де-виртуализировать/инлайнить метод
🥰 — Чтобы сделать метод static
⚡️ — Это обязательно для всех virtual в Release
Библиотека задач по C#
👍32
Что важно для ключей Dictionary<TKey, TValue> при TKey-структуре?
👾 — Переопределять только ToString()
👍 — Иммутабельность и корректные Equals/GetHashCode без зависимости от изменяемых полей
🥰 — Разрешить менять поля после вставки — хеш пересчитается автоматически
⚡️ — Достаточно реализовать IComparable<T>
Библиотека задач по C#
👾 — Переопределять только ToString()
👍 — Иммутабельность и корректные Equals/GetHashCode без зависимости от изменяемых полей
🥰 — Разрешить менять поля после вставки — хеш пересчитается автоматически
⚡️ — Достаточно реализовать IComparable<T>
Библиотека задач по C#
👍20🥰3