Я пытался выяснить накладные расходы строка в .NET 4 x64. Это то, что у меня есть.
Таким образом, вы ожидаете, что строка из 1 символа будет иметь размер 16 + 4 + 4 = 24 байта . Она делится на 8 так что он не должен нуждаться в заполнении.
Но когда я смотрю на размеры в WinDbg, я вижу, что они берут 32 байта . Когда я ! dumpobject
, они говорят, что их размер равен 28 байт, которые, как я полагаю, округляются до 32. Что происходит? Происходит ли еще один раунд выравнивания памяти?