Как стать автором
Обновить
2
0

Пользователь

Отправить сообщение

тонкая настройка параметров питания, диагностика сна, просмотр версии бивоса, настройка и просмотр некоторых сетевых параметров, до последнего обновления - просмотр секунд в 11 винде (приходилось echo %time%) - и это только что первое в голову пришло

а вообще в винде не хватает более глубокой интеграции терминала, ибо многие вещи хотелось бы через него автоматизировать

плюс стэк трейсы для всех процессов в системе

стектрейсы в какой момент?

упрощенно говоря, я представляю себе etw как большой системный логгер, логи которого впихнуты во все ключевые места ос, ключевых компонентов, подсистем и можно самому такой лог у себя добавить. Есть тулы которые слушают эти логи и записывают в файлик, потом этот файлик другими тулами можно анализировать.

но я не очень понимаю как в эту концепцию вклинивается трассировка процесса. Что под этим подразумевается? могу я увидеть стектрейсы процесса в произвольное время? я пользуюсь wpa, потому что он еще умеет подгружать pdb, может знаете как еще можно так легко сделать трассировку процесса, потом симболизировать названия функций чтоб было понятно что примерно процесс делает?

и еще: логирует ли etw вызовы win32 api?
извиняюсь, получилось много вопросов, просто как-то в фоне в голове висят, а тут зацепился и вот)

немного не по теме, но можно подробно про то как отслеживать полную трассировку процесса через etw?

что значит
предписывает только чтение из памяти
?
и все же: зачем компилятор делает копирование?
Это важно при явной реализации метода, и не играет никакой роли при публичной реализации.

вот этого не понял… Что за публичная реализация? Можно пример, в котором видна разница Dispose и IDisposable::Dispose вызовов?
ох, да, вижу
тогда у меня следующие вопросы:
1) зачем компилятор это делает (копирует переменную)? Это не то, что я ожидаю
2) почему в этом случае Dispose(), который в finally, вызывается через constrained? Ведь просто вызов (не override) метода у структуры — это просто call. Если структура приводится к интерфейсу — тогда будет box, которого я не вижу в finally

В общем: какую магию применяет компилятор по отношению к структурам в using?
все как Вы говорите, только вот выглядит так, будто JIT боксирует, судя по результатам
запускал и получал те же результаты на netcore2.2, netcore3.0
Примечание. Не забывайте, что в случае ссылочных структур используется только явная очистка, поскольку определение финализаторов для них невозможно.

Сказано так, будто у обычных структур есть финализатор

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность