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

Комментарии 22

Компилятор C# по умолчанию использует для членов классов размещение LayoutType.Auto, следовательно, загрузчик класса может расположить поля по своему усмотрению, чтобы минимизировать промежутки между полями.

Мне кажется, тут скорее, он будет пытаться оптимизировать: выравнивать по словам, например
Байты же не выровнял. Я тоже всегда думал, что все поля выравниваются по 4 байта, но по видимому всё хитрее. Интересно узнать свод правил, как JIT группирует поля в зависимости от их типа и размера. Понятно, что это внутренний механизм, который может поменяться в следующей версии, полагаться на него не стоит и всё такое.
Уж больно замысловатый у вас стиль изложения мыслей.
Замысловатый == слишком сложно воспринимается?)
Верно. Читается как черновик получившийся во время решения проблемы.
В первых обзацах я подумала, что пересказывают C# via CLR, но потом свелось всё к «а вот эту цифру можно увидеть вот тут и тут. Одна из низ означает бла-бла-бла».

Читая, я даже предположила, что вы занимаетесь написанием софта для мета-трейдеров (или как их там).

На мой взгляд, статья будет куда лучше восприниматся, если каждому из терминов (SyncBlock, Object Header итд.) дать точное определение.

А вы пишите следующее:
Object Header — Вновь взглянем на рисунок 1. Как видно, ObjectRef указывает на адрес, смещенный на 4 байта относительно начала ObjectInstance.

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

Ну… как-то так.
Значит нужно больше конкретики в начале, а не расплывчатой информации)
Спасибо!
Буду знать)
отличное техническое описание, что вы.

просто надо вникать, ибо тут популизмом не пахнет.
Тут, видимо, есть вкус и цвет, а следовательно — поспорим :) По мне, так такое внимание в первую очередь именно к деталям (развал и схождение, да — почему б и нет. Не всем же шашечки подавай) помогает получить представление всего образа в целом.
Материалы:MSDN

Наверно правильней сказать, что это не материалы, а оригинал статьи, которую вы попытались перевести. Во-первых, она гораздо полнее. А во-вторых, некоторым проще прочитать оригинал, чем перевод.
Да, если уж взялись переводить, то переводили бы уже всю статью, хотя бы по частям. А то получился кусок, частично выдернутый из контекста.
Статья рассчитывалась на песочницу. Не было полной уверенности в том, что кто-то будет читать 20++ страниц текста (с примерами из реальных проектов, зачем надо то или иное свойство объекта).
Поэтому было решено выдать кусочек статьи — всяко больше шанс, что кто-то дочитает ее до конца)
Конечно это все интересно знать, но неплохо бы было увидеть примеры, как такие знания можно применить.
В ближайшее время буду публиковать — на данный момент у меня нет примеров (просто не доводилось использовать) для Всех аспектов полной статьи. Но то, что на данный момент есть, будет рассказано.
А что означает «Размещение объектов на Run-time»?
Стоп. А что это может значит кроме фразы «Размещение объектов на Run-time».
Я не стебусь, просто пытаюсь понять: нет представления, что такое Run-time или сама фраза сформулирована неверно?
Он имеет в виду, что корректнее «Размещение объектов в Run-time» или даже «Размещение объектов во время исполнения».
Странно. Еще на майрософтофских тренингах, преподаватель говорил именно «на Run-Time».
Уточню.
По моему у меня в глазах двоится. Причем зеркально симметрично ОО.
Не понял :)
Посмотрите внимательно на 6 комментариев, расположенных выше моего первого.
Вот теперь я не понял. Вчера у меня всех комментариев было по 2, сколько я страницу не обновлял.
Теперь я понял, чего я не понял вчера :) Но у меня их всегда было по одному. Наверное, глюк браузера.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории