В .NET у вас есть метод, который вызывается в высоконагруженном сервисе миллионы раз в секунду. В профилировании видно, что он активно генерирует мусор, перегружая GC. Какой из подходов будет наиболее правильным для оптимизации?
👾 — Переписать метод на небезопасный код (unsafe) и работать напрямую с указателями
👍 — Использовать Span<T> и пулы объектов (ArrayPool<T>, ObjectPool<T>) для снижения количества аллокаций
🥰 — Увеличить размер heap в настройках CLR, чтобы GC срабатывал реже
⚡️ — Запустить несколько экземпляров метода параллельно, чтобы распределить нагрузку на разные потоки
Библиотека задач по C#
👾 — Переписать метод на небезопасный код (unsafe) и работать напрямую с указателями
👍 — Использовать Span<T> и пулы объектов (ArrayPool<T>, ObjectPool<T>) для снижения количества аллокаций
🥰 — Увеличить размер heap в настройках CLR, чтобы GC срабатывал реже
⚡️ — Запустить несколько экземпляров метода параллельно, чтобы распределить нагрузку на разные потоки
Библиотека задач по C#
👍28⚡1
В высоконагруженном .NET сервисе вы часто работаете со строками: конкатенация, парсинг, подстроки. Профилирование показывает большое количество аллокаций и нагрузку на GC. Какой подход будет наиболее правильным для оптимизации?
👾 — Использовать обычный оператор + для конкатенации строк — компилятор сам оптимизирует
👍 — Применить StringBuilder для конкатенации и Span<T>/Memory<T> для работы с подстроками без копирования
🥰 — Перейти на dynamic, чтобы уменьшить количество перегрузок
⚡️ — Вызывать GC.Collect() вручную после больших операций со строками
Библиотека задач по C#
👾 — Использовать обычный оператор + для конкатенации строк — компилятор сам оптимизирует
👍 — Применить StringBuilder для конкатенации и Span<T>/Memory<T> для работы с подстроками без копирования
🥰 — Перейти на dynamic, чтобы уменьшить количество перегрузок
⚡️ — Вызывать GC.Collect() вручную после больших операций со строками
Библиотека задач по C#
👍23⚡1🥰1
В Unity у вас есть сцена с сотнями одинаковых объектов (снаряды, враги и т.п.), и при частом их создании и уничтожении начинаются фризы из-за нагрузки на GC. Какой подход будет наиболее правильным?
👾 — Использовать Instantiate и Destroy как обычно, так как Unity оптимизирует это под капотом
👍 — Включить IL2CPP, чтобы сборщик мусора работал быстрее
🥰 — Реализовать Object Pooling (пул объектов) и переиспользовать экземпляры вместо постоянного создания/удаления
⚡️ — Уменьшить количество объектов на сцене, убрав часть из них вручную
Библиотека задач по C#
👾 — Использовать Instantiate и Destroy как обычно, так как Unity оптимизирует это под капотом
👍 — Включить IL2CPP, чтобы сборщик мусора работал быстрее
🥰 — Реализовать Object Pooling (пул объектов) и переиспользовать экземпляры вместо постоянного создания/удаления
⚡️ — Уменьшить количество объектов на сцене, убрав часть из них вручную
Библиотека задач по C#
🥰15⚡1
Объясните концепцию Raycasting в Unity и ее применения.
Raycasting предполагает проецирование линии (луча) из точки в определенном направлении для обнаружения столкновений с объектами на игровой сцене. Общие приложения включают в себя следующее:
⚡️ Механика стрельбы;
⚡️Проверка прямой видимости;
⚡️Взаимодействие объектов;
⚡️Обнаружение поверхностей для движения персонажа.
Библиотека задач по C#
⚡️ Механика стрельбы;
⚡️Проверка прямой видимости;
⚡️Взаимодействие объектов;
⚡️Обнаружение поверхностей для движения персонажа.
Библиотека задач по C#
Какой будет вывод следующего кода C# с использованием делегатов?
👾 — Hello, Delegates!
👍 — ShowMessage
🥰 — Error
⚡️ — Ничего из вышеперечисленного
Библиотека задач по C#
👾 — Hello, Delegates!
👍 — ShowMessage
🥰 — Error
Библиотека задач по C#
Please open Telegram to view this post
VIEW IN TELEGRAM
👾58⚡2😁2🤔1
Почему приватный виртуальный метод нельзя переопределить в C#?
Потому что приватные виртуальные методы недоступны за пределами класса.
Библиотека задач по C#
Библиотека задач по C#
😁3💯2🌚1
Какие из перечисленных протоколов определены средой выполнения .NET?
👾 — HTTP
👍 — HTTPS
🥰 — File
⚡️ — Все вышеперечисленное
🐸 Библиотека задач по C#
👾 — HTTP
👍 — HTTPS
🥰 — File
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡36🥰2
Что такое IoC-контейнеры?
👾 — управляет зависимостями в приложении, автоматически создавая и внедряя объекты.
👍 — инвертирует управление созданием объектов, снижая связность между компонентами.
🥰 — упрощают код, управляя жизненным циклом и зависимостями объектов.
⚡️ — разрешает зависимости между классами и помогает внедрять их через конструкторы или свойства.
🐸 Библиотека задач по C#
👾 — управляет зависимостями в приложении, автоматически создавая и внедряя объекты.
👍 — инвертирует управление созданием объектов, снижая связность между компонентами.
🥰 — упрощают код, управляя жизненным циклом и зависимостями объектов.
Please open Telegram to view this post
VIEW IN TELEGRAM
👾17👍2❤1⚡1🥰1
WANTED: ШАРПИСТ-ЗАДАЧНИК
Разыскивается эксперт, способный превратить скучный
Приметы:
— мастерски владеет
— умеет составлять интересные тесты и практические задания;
— понимает, как работает современный
— хочет стать узнаваемым автором в профессиональном сообществе.
Твои бонусы:
— гонорар за разработку авторских задач;
— работа с большой базой читателей;
— развитие личного бренда вместе с Proglib Academy.
Явка с повинной здесь
P.S. Знаешь того, кто щёлкает задачи как орехи? Сдай его нам.
Разыскивается эксперт, способный превратить скучный
legacy в изящную алгоритмическую задачу. Мы ищем практика, который знает, как проверить навыки кодинга на реальных примерах.Приметы:
— мастерски владеет
C# (знание Python или Java будет преимуществом);— умеет составлять интересные тесты и практические задания;
— понимает, как работает современный
.NET в реальном проде;— хочет стать узнаваемым автором в профессиональном сообществе.
Твои бонусы:
— гонорар за разработку авторских задач;
— работа с большой базой читателей;
— развитие личного бренда вместе с Proglib Academy.
Явка с повинной здесь
P.S. Знаешь того, кто щёлкает задачи как орехи? Сдай его нам.
Как вы бы подошли к оптимизации сцены в Unity для виртуальной реальности (VR), учитывая ограничения по производительности? Обсудите как вы бы управляли ресурсами, освещением и рендерингом.
Этот вопрос тестирует понимание кандидатом специфических аспектов оптимизации в Unity для VR. Оптимизация для VR имеет особое значение из-за высоких требований к производительности и низкой задержке. Ответ должен включать стратегии по оптимизации ассетов и текстур, управлению памятью, использованию LOD (Level of Detail) систем для управления сложностью моделей, а также эффективному использованию освещения и теней. Кандидат также может обсудить использование различных профилировщиков и инструментов для мониторинга производительности, а также специфические подходы к рендерингу для VR, такие как сокращение overdraw и использование occlusion culling.
🐸 Библиотека задач по C#
Please open Telegram to view this post
VIEW IN TELEGRAM
Что из перечисленного не является частью механизма обработки исключений C#?
👾 — try
👍 — catch
🥰 — finally
⚡️ — pass
Библиотека задач по C#
👾 — try
👍 — catch
🥰 — finally
⚡️ — pass
Библиотека задач по C#
⚡63🥰2
В C# структуры используются для ___ объектов, таких как мобильные телефоны, автомобили и т. д.
👾 — Легких
👍 — Тяжелых
🥰 — Дополнительных
⚡️ — Сжатых
Библиотека задач по C#
👾 — Легких
👍 — Тяжелых
🥰 — Дополнительных
⚡️ — Сжатых
Библиотека задач по C#
👾34⚡3
Можно ли сериализовать хеш-таблицы?
Нет, вы не можете сериализовать хеш-таблицу, поскольку .NET Framework не позволяет сериализовать объект, реализующий интерфейс IDictionary.
🐸 Библиотека задач по C#
Please open Telegram to view this post
VIEW IN TELEGRAM