CustomStringConvertible

CustomStringConvertible

在这里,我尝试对distinct函数进行基准测试,该函数通过删除phoneNumber属性的重复项来接收随机对象的数组并返回不同的数组:
当我为自己的CustomStringConvertible类实现Person协议时,发生了奇怪的事情-花费的时间增加了3倍(请参阅最后一行中的经过时间)

ios -  swift 的性能和CustomStringConvertible协议(protocol)-LMLPHP

我从不打印任何Person对象,因此看不到description var被访问21000次的明显原因。当我未实现CustomStringConvertible协议时,结果如下:
ios -  swift 的性能和CustomStringConvertible协议(protocol)-LMLPHP

性能下降的原因是什么?

最佳答案

我敢打赌,游乐场正在使用description属性将其显示在右侧时间轴视图的结果中。尝试在操场外跑步,看看会发生什么。

09-11 20:28