Fra*_*ank 7 c++ boost idioms smart-pointers copy-on-write
我刚看到这个很好的写时复制指针实现.它看起来非常通用和有用,所以我的问题是:这样的类是否包含在任何C++工具包(boost,loki等)中?如果没有,我真的很想知道为什么,因为它是一个非常有用的习惯用语,显然一个通用的实现似乎可行(就像我链接的那个).
Jer*_*fin 6
关于这种可能性存在很多争论,并且至少有一个建议版本的最终auto_ptr结果是参考计数COW指针.
auto_ptr
不幸的是,COW的时间已经过去了.使COW指针(或COW-无论如何)线程安全可能会导致严重的性能问题.
编辑:重读一下,我觉得有必要指出,并非所有使用COW都必须过时.有时它仍然有意义.线程安全增量的开销几乎是固定的 - 所以它只是一个对象必须有多大的问题,或复制的成本,COW才有意义.还有一些时间/地方你有很多(未修改的)对象的副本,并且内存的节省可以是一个合理的权衡 - 内存的节省证明了一些额外的处理器时间.如果你可以节省寻呼小数据从磁盘/,可以在匆忙出人头地.
归档时间:
15 年,10 月 前
查看次数:
1894 次
最近记录:
14 年,3 月 前