我认为ARC是一个时不时使用的首字母缩略词,但是例如在Rust中它的原子引用计数",在Swift或ObjC中它们称之为"自动引用计数&#34 ;.究竟有什么区别?据我所知,他们似乎表现得一样。
答案 0 :(得分:4)
这实际上......完全不同。
在Rust方面,我们有Arc
和Rc
作为引用计数指针:
Rc
是裸骨引用计数指针:克隆它只是增加一个计数器,当指向特定数据的最后一个Rc
被删除时,计数器下降到0这条数据也被删除了。Arc
是它的原子版本,这意味着它是线程安全的,可以跨线程共享(与Rc
不同)。在Swift方面,ARC
指的是自动引用计数,Swift的垃圾收集机制,顾名思义是自动的(在代码中不可见)。