我在我的应用程序中看到了相当多的垃圾收集器停顿,所以我对其进行了分析,发现大量垃圾是由我的一种方法生成的,该方法仅执行以下操作:
return Address.Equals(other.Address)
Address
一个在哪里IntPtr
。
事实证明,IntPtr
它不像大多数值类型那样实现IEquatable<T>
,因此我other.Address
每次都在装箱。
是否有充分的理由IntPtr
不实现该接口,或者这是一个疏忽?
我在我的应用程序中看到了相当多的垃圾收集器停顿,所以我对其进行了分析,发现大量垃圾是由我的一种方法生成的,该方法仅执行以下操作:
return Address.Equals(other.Address)
Address
一个在哪里IntPtr
。
事实证明,IntPtr
它不像大多数值类型那样实现IEquatable<T>
,因此我other.Address
每次都在装箱。
是否有充分的理由IntPtr
不实现该接口,或者这是一个疏忽?