Vynucuje se limit velikosti vložené struktury pole.
Atribut InlineArrayAttribute byl zaveden v .NET 8 pro přidávání poznámek typů struktur, které mají jedno pole. Vložené struktury pole měly mít limit velikosti 1 mebibajtů (MiB). Kvůli chybě se však limit nevynucuje pro vložené struktury pole, které mají sekvenční rozložení, což je také výchozí rozložení generované jazykem C#. Tato změna vynucuje limit velikosti.
Předchozí chování
V .NET 8 můžete deklarovat vloženou strukturu pole s libovolnou kladnou, nenulovou velikostí. V extrémních případech byla efektivní velikost nepředvídatelná. Například struktura, jejíž velikost byla deklarována jako Int32.MaxValue + 1
ukončena, má velikost 1 kvůli obtékání.
Nové chování
Počínaje rozhraním .NET 9 se vynucuje limit velikosti 1 MiB.
Zavedená verze
.NET 9 Preview 1
Typ zásadní změny
Tato změna je změna chování.
Důvod změny
Tato změna opravuje chybu v implementaci, kdy se nevynucovalo omezení velikosti.
Doporučená akce
Pokud máte kód, který používá vložené struktury pole s velmi velkými instancemi, které překračují limit, snižte velikost těchto struktur.