Open anicetrip opened 11 months ago
刚开始我翻译的是“分配的内存”,但是形容词+动词的方式很多地方会很拗口,所以使用了双字节名词,比较统一,但很多地方也只能作为“专有名词”看待,这种也是比较难抉择的点之一。
刚开始我翻译的是“分配的内存”,但是形容词+动词的方式很多地方会很拗口,所以使用了双字节名词,比较统一,但很多地方也只能作为“专有名词”看待,这种也是比较难抉择的点之一。
如果这样的话,个人建议把第一次出现的地方改成内存分配(空间),后面就不用改了,我chatgpt问了半天才搞清楚这边的意思。 我查了一下box会在堆上保存一份复制,但是arc只会创建一个指针,所以原文想表达的是它会占用内存空间。
我查了一下box会在堆上保存一份复制,但是arc只会创建一个指针,所以原文想表达的是它会占用内存空间。
Box 一次只能有一个所有者指向堆内存的数据,Arc 可以有多个,alloction 看情况,不同的地方会有不同的意思。
allocation希望可以翻译为内存分配区间。
在第一章“引用计数”中,我们了解了
std::sync::Arc<T>
类型允许通过引用计数共享所有权。Arc::new
函数创建一个新的内存分配区间,就像Box::new
。然而,与 Box 不同的是,克隆 Arc 将共享原始的内存分配区间,而不是创建一个新的。只有当 Arc 和所有其他的克隆被丢弃,共享的内存分配才会被丢弃。