上一页 1 ··· 25 26 27 28 29 30 31 32 33 ··· 35 下一页
摘要: ArrayList 线程:不安全 实现方式:数组 初始大小:10 扩容:(原数组容量+原数组容量/2),如果(原数组容量+原数组容量/2)<传入的minCapacity,则扩容到minCapacity 数组最大值:Integer.MAX_VALUE - 8,由于有一些vms会在数组头存储一些字,为了 阅读全文
posted @ 2018-09-28 11:28 使用D 阅读(895) 评论(0) 推荐(0) 编辑
摘要: 链表提供高效的节点重排能力,以及顺序性的节点访问方式,并且可以通过增删节点来灵活的调整链表的长度。 1、Redis构建了自己的链表, 链表节点的结构(adlist.h/listNode): typedef struct listNode{ //前置节点 struct listNode *pre; / 阅读全文
posted @ 2018-09-26 00:02 使用D 阅读(369) 评论(0) 推荐(0) 编辑
摘要: 1、简单动态字符串SDS全称simple dynamic string。 SDS是Redis自己构建的抽象类型,并将SDS用作Redis的默认字符串表示。 例如:set msg "hello world" 其中键msg是一个字符串对象,对象的底层实现是一个保存着字符串msg的SDS; 其中值为hel 阅读全文
posted @ 2018-09-25 23:45 使用D 阅读(488) 评论(0) 推荐(0) 编辑
摘要: 原子操作atomic operation是“不可中断的一个或者一系列操作”。 1、术语 缓存行: 缓存的最小操作单位。 比较并交换(Compare and Swap): CAS操作需要输入两个数值,一个旧值(期望操作前的值)和一个新值,在操作期间先比较旧值有没有变化,如果没有变化,才交换成新值,旧值 阅读全文
posted @ 2018-09-12 23:01 使用D 阅读(604) 评论(0) 推荐(0) 编辑
摘要: 调用Arrays.copyOf()方法会在堆中重新分配内存创建数组 调用Arrays.copyOf()方法会在堆中重新分配内存创建数组 代码翻译: /传入原有数组对象,传入要截取的长度 public static <T> T[] copyOf(T[] original, int newLength) 阅读全文
posted @ 2018-09-11 15:43 使用D 阅读(4263) 评论(0) 推荐(0) 编辑
摘要: 实现List、RandomAccess、Cloneable List接口定义List集合的操作方法 RandomAccess实现此接口的类可以随机访问 Cloneable实现此接口的类可以进行拷贝操作 重要说明: CopyOnWriteArrayList是线程安全的, 通过CopyOnWriteAr 阅读全文
posted @ 2018-09-11 15:18 使用D 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 责任链模式:将多个对象组成一条责任链,然后按照它们在责任链上的顺序一个一个地找出到低应该谁来负责处理。 使用责任链模式可以弱化“请求方”和“处理方”之间的关联关系,让双方各自都称为独立复用的组件。 角色: Handler处理者:定了处理请求的接口API,Handler角色知道下一个处理者是谁。如果自 阅读全文
posted @ 2018-09-11 00:51 使用D 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 1、在多线程并发编程中synchronized一直被称为重量级锁,但是随着Java se1.6 对synchronized进行了各种优化后,有些情况下它就并不那么重了。 synchronized实现同步的基础:每个对象都可以作为锁,具体分为三种情况: 对于普通同步方法,锁的是自己实力对象 对于静态同 阅读全文
posted @ 2018-09-11 00:12 使用D 阅读(197) 评论(0) 推荐(0) 编辑
摘要: volatile是轻量级的synchronized,它在多处理开发中保证了共享变量的“可见性”。 可见性是指当一个线程修改一个共享变量时,另外一个线程能读到这个修改的值。 如果volatile变量修饰符使用恰当的话,它比synchronized的使用和执行成本更低。 成本低的原因是:volatile 阅读全文
posted @ 2018-09-10 22:12 使用D 阅读(455) 评论(0) 推荐(0) 编辑
摘要: 找到/usr/lib/systemd/system/docker.service,修改ExecStart对应行: ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock #重新加载 systemc 阅读全文
posted @ 2018-09-10 16:53 使用D 阅读(186) 评论(0) 推荐(0) 编辑
上一页 1 ··· 25 26 27 28 29 30 31 32 33 ··· 35 下一页