Главная
Блог разработчиков phpBB
 
+ 17 предустановленных модов
+ SEO-оптимизация форума
+ авторизация через соц. сети
+ защита от спама

Мастер-класс по нутрям .Net Framework

Anna | 17.06.2014 | нет комментариев
Раньше каждого хочу подметить что я имею ввиду под internals. В данном случае я имею ввиду именно внутренние конструкции данных .Net Framework. чай, находясь под его опекой, что мы видим? Стройную архитектуру классов, суровую типизацию, настройки безопасности. И все как бы как автомагически работает и не нужно ни о чем задумываться. И как бы как даже восхитительно. Но вы по сути, находитесь в Матрице. В Матрице, о законах которой вы знаете только понаслышке. Что GC работает именно так, вам сказали. Но Вы чай не уверенны что это именно так?

Так вот если продолжать метафору, курс направлен на программный выход из границ CLR. Прослушав курс, проделав прямо на месте фактические задания, вы обучитесь выходить из .Net средствами .Net. Менять конструкцию типов .Net не прибегая к рефлексии. Встревать в процесс многопоточности, и проделывать по-настоящему шаманские вещи -)

Я дюже верю, что программа Вам дюже понравится, т.к. по сути — это итог собственных изысканий, и все что здесь есть, нагуглить не получится :)

Дабы было видно, напишу здесь: по ссылке ниже вы попадете на timepad площадку регистрации билетов. Там вы билет Бронируете. Дальше, позже майских я открою оплату и дозволено будет оплатить.

Программа мастер-класса

Основы управления памятью в .Net и не только
  • Small Objects Heap/Large Objects Heap
  • Thread Stack, High / Low Frequency Heaps, Code Heap, Stubs Heap
  • Ephemeral Segments
  • Pages, Memory mapped files
Как устроены объекты в памяти
  • Как устроен всякий Object? Что он содержит?
  • MethodTable
  • EEClass
  • Son Of Strike (SOS) растяжение отладчика для просмотра внутренностей объектов .Net
  • Основные команды отладчика
  • Разглядим что в действительности представляют из себя объекты в памяти
  • Считаем sizeof() всякого .Net типа (стандарнтый sizeof считает только по Value типам)
Практика: базовые трюки
  • Получаем указатель на объект.Net, исследуем его реальную конструкцию
  • Фактически увлекательный пример: передаем объекты между AppDomains без сериализации: без убыточных затрат.
  • Фактически увлекательный пример: загружаем сборку так что ее типами дозволено пользоваться в нынешнем домене, но при этом ее дозволено отгрузить.
  • Немножко развлечемся: сотворим RefType экземпляр на стеке
  • Что такое Исключение? Какие конструкции данных создаются при написании try/catch/finally? Как их получить и как ими руководить? Отчего исключение точно пробрасывается через способы, которые не поддерживают исключения?
  • Помещаем в цепочку свой обработчик, тот, что будет легко слушать все что через него идет.
  • Вручную, без catch перехватываем исключение
  • Как реализуется catch(){ throw; }
Практика: продвинутые трюки
  • Разрабатываем класс для выделения .Net объектов вне .Net памяти (вне SOH/LOH)
  • Пишем пул объектов вне .Net памяти
  • Вызываем конструктор по указателю — избавляемся от тормозов рефлексии
  • Фактически увлекательный пример: Создаем прокси-тип, подменяя указатели на скомпилированные тела способов
  • Фактически увлекательный пример: Пишем ядро Memory Profiler’а — делаем дамп виртуальной памяти с распознанием .Net объектов в ней.
  • Сделаем тип вручную прямой генерацией внутренних конструкций CLR (таблиц виртуальных способов и интерфейсов)
  • Практичеcки увлекательный пример: Расшарим .Net объект между процессами (через применение Paging файла)
  • Практичеcки увлекательный пример: Пишем способ fork(): способ, создающий поток, тот, что ста

 

Источник: programmingmaster.ru

 

Оставить комментарий
БАЗА ЗНАНИЙ
СЛУЧАЙНАЯ СТАТЬЯ
СЛУЧАЙНЫЙ БЛОГ
СЛУЧАЙНЫЙ МОД
СЛУЧАЙНЫЙ СКИН
НОВЫЕ МОДЫ
НОВЫЕ СКИНЫ
НАКОПЛЕННЫЙ ОПЫТ
Форум phpBB, русская поддержка форума phpBB
Рейтинг@Mail.ru 2008 - 2017 © BB3x.ru - русская поддержка форума phpBB