Du's Time

weak变量性能低的原因

Word count: 127 / Reading time: 1 min
2016/07/02 Share

经常看到说weak变量性能低要少用,但就是没看到文章说明一下原因,于是我弱弱总结一下:

  1. weak变量使用时会生成autorelease临时变量,增加性能消耗
  2. 所有weak变量都会被加入到weak散列表中,每次有内存释放时都会遍历这个散列表,置空所有的weak变量。如果weak变量太多,遍历散列表将变得非常耗时

参考资料:
《Objective-C 高级编程》

CATALOG