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

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

###OC与swift autoreleasepool

//objective-C
@autoreleasepool{}

//swift
不再使用

原因: @UIApplicationMain,我们不再需要main文件和main函数,所以原来的整个程序的自动释放池就不存在了。
即使我们使用main.swift来作为程序的入口时,也是不需要自己再添加自动释放池的。

synchronized

apple doc关于线程安全

objc_sync源码

//oc 中经常使用
-(void)moveFun(id parm){
    @synchronized(parm){
        //避免多个线程同时访问
    }
}
//swift
func moveFun( aObj:AnyObject!) {
   objc_sync_enter(aObj)
    //锁住变量
   objc_sync_exit(aObj)
}
注意: synchronized的底层实际是使用objc_sync_enter 和 objc_sync_exit 方法
原文链接:https://www.f2er.com/swift/323545.html

猜你在找的Swift相关文章