08 2015 档案
摘要:排序算法研究的若干问题 排序成本模型:在研究算法的时候我们会计算比较和交换的次数,对于不交换元素的算法我们会计算数组访问的次数。额外内存使用 排序算法的额外内存开销与运行时间是同等重要的,排序算法那可以分为两种,一是除了算法函数本身调用栈和固定数目的实例变量之外无需额外内存的原地排序算法,以及需要额...
阅读全文
摘要:concurrent包是java提供的并发编程框架的一个库,该库为java并发编程提供各种各样的组件,主要包括以下几个方面: Atomic数据类型 该部分主要是针对java的基础数据类型Boolean,Integer,Long,Reference,实现了其原子化操作的数据类型,该部分被放在java....
阅读全文
摘要:java中提供了丰富的集合类操作,大概可以分为无序结合Set,有序集合List和无序键值对集合Map。Java5之后又新增了队列操作集合Queue。Java1.5之后新增了线程安全的集合操作类,阻止在java.util.concurrent包中。本文仅仅探讨该包下面的线程安全的结合操作类。 先看下c...
阅读全文
摘要:一 Executor接口 Executor接口的对象是一种执行任务的方式。它能够使提交的任务和执行任务的线程的管理解耦。我们通常用Executor来代替new一个Thread对象来执行任务。这样可以省略底层线程的管理细节。例如: executor.excute(newRunnableTask());...
阅读全文
摘要:一 任务取消 中断——任务的取消策略 一些特殊的阻塞库的方法支持中断。线程的中断时一种写作机制,通过这种协作机制,线程可以通知另一个的线程,在合适的或者可能的情况下,停止当前工作并且转而执行其他的工作。 在java的API文档中,并没有将中断与任何任务取消的语义关联起来,但是实际上如果在取消之外的其...
阅读全文
摘要:一. Executor框架------------------------------------------------------------------------《未完》----------------------------------------------------
阅读全文
摘要:一、同步容器类 同步容器类包含Vector,Hashtable。以及在JDK1.2中添加的一些功能类似的容器类,他们是由Collections.synchronisedXxx等工厂方法创建的。这些类实现线程安全的方式就是将底层容器类的状态变量封装起来,并且同步每一个公有的方法,使得每次只能有一个线程...
阅读全文