写在前面
本文思想参考与《Java虚拟机并发编程》,主要讨论的也是并发问题的设计方法,
至于使用到Trie树以及其在字符串匹配方面的数据结构问题不做过多的深入讨论。
持久化数据结构
持久化解决同步问题
在处理同步问题的时候,共享变量的可变性常常带给我们困扰。
这种时候采用持久化的不可变性的数据结构能够使我们在编程的时候无需修改状态就可实现同步问题。
持久化解决同步问题的思想来源于纯粹不可变性设计(参见于Java虚拟机并发编程)
下面贴一条不可变链表的设计与实现
class Node {
public Integer i;
public Node nextNode;
Node(Integer i, Node nextNode) {
this.i = i;
this.nextNode = nextNode;
}
}
/*
* 不可变链表实现
*
* 与普通i++操作对比
*
*/
public class IncrementI {
publi