Каковы размеры упаковки структуры по умолчанию для .NET на разных платформах?

Документация дляSystem.Runtime.InteropServices.StructLayoutAttribute.Pack поле говорит, что:

По умолчанию значение равно 0, что указывает на размер упаковки по умолчанию для текущей платформы.

Мне не удалось найти какую-либо документацию, в которой говорилось бы, какие на самом деле размеры упаковки по умолчанию для различных платформ, поддерживаемых.NET. Поскольку речь идет о выравнивании памяти, я предполагаю, что в документации говорится о платформах в смысле архитектуры процессора и набора инструкций (x86/x64/ARM, возможно, даже Itanium для старых версий.NET Framework, других архитектур для Mono), а не о платформах. в смысле операционной системы хоста (Windows/Linux/MacOS) или платформ в смысле таргетинга.NET (например,.NET Framework/.NET Core/WinRT/Xamarin/Mono).

Может ли кто-нибудь предоставить полный список того, какой "размер упаковки по умолчанию для текущей платформы" будет на каждой платформе?

0 ответов

Другие вопросы по тегам