在这里,我尝试通过按 phoneNumber
属性删除重复项来对我的 distinct
函数进行基准测试,该函数接收随机对象数组并返回不同数组:
当我为 Person
类实现 CustomStringConvertible
协议(protocol)时,奇怪的事情发生了 - 任务花费的时间增加了 3 倍(请参阅最后一行中的耗时)
我从不打印任何 Person
对象,因此我看不出 description
var 被访问 21000 次的明显原因。这是我未实现 CustomStringConvertible
协议(protocol)时的结果:
性能下降的原因是什么?
最佳答案
我敢打赌,playground 正在使用 description
属性将其显示在右侧时间线 View 的结果中。尝试在 Playground 外运行它,看看会发生什么。
关于ios - Swift 性能和 CustomStringConvertible 协议(protocol),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33020705/