摘要: 前面讲了两种List,一种基于数组实现的ArrayList,一种基于链表实现的LinkedList,这两种list是我们工作中最常用到的List容器。当然数组和链表也是两种常见的基本数据结构,其他基本数据结构还有堆栈、队列、树等,对java容器的学习,也可以看做是对数据结构的学习和使用。 在A... 阅读全文
posted @ 2015-12-15 20:08 吞噬天帝 阅读(1768) 评论(0) 推荐(2) 编辑
摘要: LinkedList是基于链表结构的一种List,在分析LinkedList源码前有必要对链表结构进行说明。1.链表的概念链表是由一系列非连续的节点组成的存储结构,简单分下类的话,链表又分为单向链表和双向链表,而单向/双向链表又可以分为循环链表和非循环链表,下面简单就这四种链表进行图解说明。 1.1... 阅读全文
posted @ 2015-12-14 22:59 吞噬天帝 阅读(2575) 评论(4) 推荐(2) 编辑
摘要: 工作中经常听到别人讲“容器”,各种各样的容器,话说到底什么是容器,通俗的讲“容器就是用来装东西的器皿,比如:水桶就是用来盛水的,水桶就是一个容器。”ok,在我们写程序的时候常常要对大量的对象进行管理,比如查询,遍历,修改等。jdk为我们提供的容器位于java.util包,也是我们平时用的最多的包... 阅读全文
posted @ 2015-12-12 23:38 吞噬天帝 阅读(3433) 评论(5) 推荐(2) 编辑
摘要: Condition的功能类似在传统线程技术中的Object.wait和Object.notity的功能。例子:生产者与消费者 1 import java.util.Random; 2 import java.util.concurrent.ExecutorService; 3 import j... 阅读全文
posted @ 2015-12-11 21:17 吞噬天帝 阅读(329) 评论(2) 推荐(0) 编辑
摘要: 读写锁:多个读锁不互斥,读锁与写锁互斥,写锁与写锁互斥。即:读的时候不允许写,写的时候不允许读,可以同时读。 synchronized关键字和普通的Lock构造的锁,会造成读与读之间的互斥,因此读写锁可提高性能。例子1:三个线程同时对一个共享数据进行读写。 1 import java.util.R... 阅读全文
posted @ 2015-12-11 21:15 吞噬天帝 阅读(979) 评论(0) 推荐(1) 编辑
摘要: CompletionService用于提交一组Callable任务,其take方法返回已完成的一个Callable任务对应的Future对象。如果你向Executor提交了一个批处理任务,并且希望在它们完成后获得结果。为此你可以将每个任务的Future保存进一个集合,然后循环这个集合调用Future... 阅读全文
posted @ 2015-12-08 22:48 吞噬天帝 阅读(1504) 评论(0) 推荐(1) 编辑
摘要: 普通的创建线程,一种是直接继承Thread,另外一种就是实现Runnable接口。但是这两种都无法在执行完任务之后获取执行结果,Callable、Future就提供了这样的便利。Future的方法说明:booleancancel(booleanmayInterruptIfRunning);cance... 阅读全文
posted @ 2015-12-08 22:46 吞噬天帝 阅读(859) 评论(0) 推荐(0) 编辑
摘要: 一、WebSocket是HTML5出的东西(协议),也就是说HTTP协议没有变化,或者说没关系,但HTTP是不支持持久连接的(长连接,循环连接的不算)首先HTTP有1.1和1.0之说,也就是所谓的keep-alive,把多个HTTP请求合并为一个,但是Websocket其实是一个新协议,跟HTTP协... 阅读全文
posted @ 2015-12-08 14:26 吞噬天帝 阅读(1767) 评论(1) 推荐(0) 编辑
摘要: jvm内存模型程序计数器:是一块很小的内存空间。当线程数量超过cpu数量时,线程之间根据时间片轮询抢夺cpu资源。每一个线程都必须用一个独立的程序计数器,用于记录下一条要运行的指令。java虚拟机栈(线程栈 ):也是线程私有内存空间,他和java线程在同一时间创建,他保存方法的局部变量、部分结果,并... 阅读全文
posted @ 2015-12-07 17:23 吞噬天帝 阅读(1701) 评论(0) 推荐(0) 编辑
摘要: 字面意思回环栅栏,通过它可以实现让一组线程等待至某个状态之后再全部同时执行。叫做回环是因为当所有等待线程都被释放以后,CyclicBarrier可以被重用。主要方法:public int await() throws InterruptedException, BrokenBarrierExcept... 阅读全文
posted @ 2015-11-27 10:12 吞噬天帝 阅读(304) 评论(0) 推荐(0) 编辑