Разгоняем хитрое тестовое задание на Senior .NET Developer с помощью dotTrace и пары трюков

#DevJungles #dotnet #ityoutubers Telegram канал Dev Jungles -
Поддержать канал можно: Спонсорством на YouTube Переводом на карту или пополнением банки монобанка: Dev Jungles YouTube Channel Fund
GitHub Repo with Code:
Номер карты банки: 5375 4112 0230 1466 Или криптой: BTC - 18C3jsFYwviN5FvzpAt4uMWRfUeVKvdWxy ETH - 0x2903f63ba9009732272e91a299053b9d7b623216 USDT on ERC20 - 0x2903f63ba9009732272e91a299053b9d7b623216 USDT on TRC20 - TSmS5RzQKbWdxZkoM2oRo9HK8FYBaq744T LTC - LN3CkrnvZLZTXDUhqTy1gUKMVpLjEPA4G2 DOGE - DPwon439jf3axVSBwyuXso6z7CivuJF655 AAVE - 0x2903f63ba9009732272e91a299053b9d7b623216 Waves - 3P8D57Zw7CrqW2o7dHpvZR2UzAzQRFA2kZd Описание: Доброго времени суток тебе, странник! Добро пожаловать в Dev Jungles Stories! Однажды, моему хорошему другану дали тестовое задание на Seniorа в одну большую компанию. Задание состояло из двух частей: в первой нужно было сгенерировать огромный файл, настолько большой, что бы он не влезал в оперативную память, а во второй - отсортировать этот файл. Притом там были своеобразные правила сортировки. Одним из условий тестового задания было сделать так, чтобы программа работала как можно быстрее при как можно меньшем количестве потребляемой памяти. Нужно было искать баланс. Сейчас мы сделаем это задание "в лоб". Т.е. с ограничением оперативной памяти, чтобы не выпасть с "Out of memory", но при этом не сильно запариваясь за производительность. Что ж, не будем долго тянуть, вперед! Полная версия стрима тут:    • Профилировка .NET приложений. Разбор тесто...   Тайм-коды: 00:00 - Тизер 02:46 - Нашли "горячую точку", что дальше? 04:01 - Подсистемы 05:12 - Банальный ЛинКью 06:51 - В массив новый элемент 08:57 - Записываем в массив отсортированный файл 10:06 - Метод Рид ЛАйнс 11:00 - Когда-то я поставлю .NET 6 15:37 - Метод Array Resize 17:18 - Почему мне нравиться эта оптимизация 18:40 - Все результаты трудов к черту 20:57 - Выиграли 3 секунды {"parent": "B9v7pdfhUYw"}

Смотрите также