ДОКЛАДЫ


Санкт-Петербург, 13 апреля 2019 года. Москва, 20 апреля 2019 года

930 Кофе-брейк
сборы перед началом семинара
1000

1000 - 1050

1100 - 1150

1200 - 1250

1300 - 1350

Организация памяти

Вводным докладом, для разогрева рассмотрим организацию памяти на базовом уровне. SOH, LOH, Thread stack, cards table и прочие примитивы.

Выделение памяти

Той процедуре, о которой обычно говорят "для выделения памяти передвигается указатель на конец блока занятой памяти" мы посвятим 45 минут, рассматривая все кейсы: от упомянутого самого простого до самого сложного кейса, который привлекает StackOverflow

Garbage Collection: введение в сборку мусора

Стадии сборки мусора, причины разделения, производительность. Механизмы, запускающие сборку мусора, приостанавливающие выполнение программ на время сборки мусора, выбор поколения для сборки мусора

Garbage Collection: фаза маркировки

Проход по объектам, корни обхода дерева объектов. Финализация, внутренние корни GC, корни GC handles, утечки памяти, связанные с корнями.
1350 Обед
общение по докладам
1500


1500 - 1545


1600 - 1645


1700 - 1745


1800 - 1845

System.IO.Pipeline

Совершенно новый API по работе с вводом-выводом

Garbage Collection: фаза планирования

Куча малых объектов: зоны маркированных и немаркированных объектов. Таблица свободных участков, закреплённые объекты. Границы поколений, отказ в смене поколения. Куча больших объектов.

Garbage Collection: фаза зачистки и сжатия

Правила зачистки и сжатия для куч больших и малых объектов.

Продвинутые особенности сборки мусора

Режимы рабочей станции и сервера, .NET Framework vs .NET Core, Workstation Concurrent/Non-Concurrent. Concurrent sweep, server non-concurrent, background server. No GC regions, low latency, sustained low latency.


1900 - 1945







Адские практики работы с памятью

Напоследок я покажу пару примеров адовой манипуляции с памятью
2000 Завершение семинара 2000