В.NET существует 8 байтов издержек для каждого объекта. 4 байта являются указателем на тип объекта. Для чего другие 4 байта, известные как объектный заголовок, используемый?
Примечание: вопрос задали в 2010 и составляет конкретные 32 бита. Издержки являются зависимым разрядности: 1 размер указателя для типа "объекта" (таблица метода) и 1 размер указателя для объектного заголовка. Так, это составляет 2*4 байта для 32 битов и 2*8 байтов для приложений на 64 бита.
В этой статье обсуждается много внутренних компонентов, включая то, что входит в каждый экземпляр объекта. В основном, это информация о типе и указатель на синхроблок (поскольку любой объект может быть потенциально заблокирован)