【swift Objective-c】深入了解 核心比较语言特性

前端之家收集整理的这篇文章主要介绍了【swift Objective-c】深入了解 核心比较语言特性前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

###OC与swift autoreleasepool

  1. //objective-C
  2. @autoreleasepool{}
  3.  
  4. //swift
  5. 不再使用
  6.  
  7. 原因: @UIApplicationMain,我们不再需要main文件main函数,所以原来的整个程序的自动释放池就不存在了。
  8. 即使我们使用main.swift来作为程序的入口时,也是不需要自己再添加自动释放池的。

synchronized

apple doc关于线程安全

objc_sync源码

  1. //oc 中经常使用
  2. -(void)moveFun(id parm){
  3. @synchronized(parm){
  4. //避免多个线程同时访问
  5. }
  6. }
  7. //swift
  8. func moveFun( aObj:AnyObject!) {
  9. objc_sync_enter(aObj)
  10. //锁住变量
  11. objc_sync_exit(aObj)
  12. }
  13. 注意: synchronized的底层实际是使用objc_sync_enter objc_sync_exit 方法

猜你在找的Swift相关文章