Vector<T> で、サポートされない型に対して常に NotSupportedException がスローされる
System.Numerics.Vector<T> では、サポートされていない型パラメーターに対して常に NotSupportedException がスローされるようになりました。
変更の説明
以前の Vector<T> のメンバーでは、T
が サポートされていない型だった場合に、常に NotSupportedException がスローされるとは限りませんでした。 例外が常にスローされなかったのは、ハードウェアの高速化をサポートしていたコード パスが原因でした。 たとえば、ハードウェアの高速化がないプラットフォーム (Arm32 など) で Vector<bool> + Vector<bool>
を使用すると、例外をスローするのではなく default
が返されました。 サポートされていない型について、Vector<T> のメンバーが示す動作には、異なるプラットフォームやハードウェア構成にわたる一貫性がありませんでした。
.NET 5 以降、Vector<T> のメンバーでは、T
がサポートされていない型である場合に、すべてのハードウェア構成で常に NotSupportedException がスローされます。
サポートされていない型
Vector<T> の型パラメーターでサポートされている型は次のとおりです。
byte
sbyte
short
ushort
int
uint
long
ulong
float
double
サポートされている型は変更されていませんが、将来変更される可能性があります。
導入されたバージョン
5.0
推奨アクション
Vector<T> の型パラメーターにサポートされていない型を使用しないでください。
影響を受ける API
- System.Numerics.Vector<T> およびそのすべてのメンバー
.NET
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示