对象释放与线程的关系

一个对象从创建到释放,不管是OC还是Swift,都有引用计数来管理,在引用计数为0时,程序会在一个恰当的时机把这个对象释放。

“恰当的时机”是 线程Runloop的某个环节,但问题是,会在哪个线程里释放呢?

经测试,无论是在OC中还是Swift中,

dealloc都是在最后一次释放的线程中执行。

就是说,一个对象,无论它在哪个线程总创建或者被使用,它只在最后一次release它的那个线程中执行dealloc/deinit操作。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容