Рубрика «упрлс»

Вот и подходит двухнедельный отдых к концу, а вместе с ним и накопившиеся темы с предыдущей встречи сообщества .Net разработчиков на CLRium. Эта серия постов примерно показывает уровень, с которым мы раскрываем темы на этом мастер-классе, а что будет во второй встрече, можно почитать по ссылке: CLRium #2.

Ссылка на проект в GitHub: Делаем отгружаемые сборки: взаимодействуем между доменами без маршаллинга - 7 DotNetEx

На множественных ресурсах время от времени задается вопрос. Можно ли сделать отгружаемые сборки с текущего домена? Так, чтобы попользовался и «давай, до свидания!»? Везде и всегда ответ, который давался – это «нет». Ведь единственное, что можно выгрузить – это домен. Соответственно, если хочется наладить отгрузку, сборку надо помещать в домен, и налаживать между доменами взаимодействие через сериализуемые типы. А это — очень медленное взаимодействие. А мы скажем так. Можно. С ньюансами. Загружать мы будем также в отдельный домен. Но отменим сериализацию при вызове методов между доменами.

Вопросы, которые мы будем решать:

  • Создание домена с возможностью отдачи объекта из домена в родительский
  • Выгрузка сборки

Читать полностью »

Снимаем дамп объектов с памяти .Net приложения - 1 Продолжаем тему интересного на .Net, от чего мир Java будет посмеиваться (хотя у них это также возможно сделать), а приверженцы С++ говорить: «чего они только не сделают чтобы не учить C++».

В данной заметке мы напишем по сути – простенькое ядрышко профилировщика памяти для платформы .Net, который будет снимать дамп с SOH кучи (а в перспективе и с LOH).

Для написания статьи нам понадобится код из статьи Снимаем дамп объектов с памяти .Net приложения - 2 Получение указателя на объект .Net и Снимаем дамп объектов с памяти .Net приложения - 3 Ручное клонирование потока (измерение размера объектов).

Наши цели на сегодня:

  • Научиться итерировать кучу .Net
  • Научиться находить начало кучи .Net
  • Попробовать сытерировать все объекты чужого домена.

Ссылка на проект в GitHub: Снимаем дамп объектов с памяти .Net приложения - 4 DotNetEx

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js