Copy-on-Write
除了 Java,在其它领域也广泛应用了写时复制。比如:
- 文件系统 Btrfs(B-Tree File System)、aufs(advanced multi-layered unification system)等。
- Docker 容器镜像。
- 分布式源码管理系统 Git。
- 函数式编程领域。
函数式编程的基础是不可变性,所以函数式编程的修改操作都需要 Copy-on-Write。
Copy-on-Write 适用于读多写少的场景,这也是为什么 Java 没有 CopyOnWriteLinkedList 实现,因为 LinkedList 适合于读少写多的场景。
Last modified 3yr ago