对于不支持的类型,Vector<T> 始终引发 NotSupportedException
现在,对于不支持的类型参数,System.Numerics.Vector<T> 始终引发 NotSupportedException。
更改描述
以前,如果 T
是不支持的类型,Vector<T> 的成员将不会始终引发 NotSupportedException。 并非总是因支持硬件加速的代码路径而引发异常。 例如,Vector<bool> + Vector<bool>
返回了 default
,而不是在没有硬件加速的平台(如 Arm32)上引发异常。 对于不支持的类型,Vector<T> 成员在不同的平台和硬件配置中表现出不一致的行为。
从 .NET 5 开始,如果 T
类型不受支持,那么 Vector<T> 成员始终会对所有硬件配置引发 NotSupportedException。
不支持的类型
Vector<T> 的类型参数支持的类型如下:
byte
sbyte
short
ushort
int
uint
long
ulong
float
double
支持的类型并无变化,但将来可能会更改。
引入的版本
5.0
建议操作
不要对 Vector<T> 的类型参数使用不受支持的类型。
受影响的 API
- System.Numerics.Vector<T> 及其所有成员
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈