Dela via


Vector<T> genererar alltid NotSupportedException för typer som inte stöds

System.Numerics.Vector<T> genererar nu alltid en NotSupportedException för typparametrar som inte stöds.

Ändra beskrivning

Tidigare skulle medlemmar i Vector<T> inte alltid kasta en NotSupportedException när T var en typ som inte stöds. Undantaget utlöstes inte alltid på grund av kodsökvägar som stödde maskinvaruacceleration. Till exempel Vector<bool> + Vector<bool> returneras default i stället för att utlösa ett undantag på plattformar som inte har någon maskinvaruacceleration, till exempel Arm32. För typer som Vector<T> inte stöds uppvisade medlemmar inkonsekvent beteende på olika plattformar och maskinvarukonfigurationer.

Från och med .NET 5 Vector<T> genererar medlemmar alltid en NotSupportedException på alla maskinvarukonfigurationer när T det inte finns någon typ som stöds.

Typer som inte stöds

De typer som stöds för typparametern Vector<T> är:

  • byte
  • sbyte
  • short
  • ushort
  • int
  • uint
  • long
  • ulong
  • float
  • double

De typer som stöds har inte ändrats, men de kan ändras i framtiden.

Version introducerad

5,0

Använd inte en typ som inte stöds för typparametern Vector<T>för .

Berörda API:er