上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 23 下一页
摘要: Atomic包的作用 方便程序员在多线程环境下,无锁的进行原子操作 Atomic包核心 Atomic包里的类基本都是使用Unsafe实现的包装类,核心操作是CAS原子操作; 关于CAS compare and swap,比较和替换技术,将预期值与当前变量的值比较(compare),如果相等则使用新值 阅读全文
posted @ 2016-04-10 22:22 风一样的码农 阅读(6035) 评论(2) 推荐(2) 编辑
摘要: 前言 Channels和Buffers是JAVA NIO里面比较重要的两个概念,NIO正是基于Channels和Buffers进行数据操作,且数据总是从Channels读取到Buffers,或者从Buffers写入到Channels。 通道(Channel) NIO中的通道与IO中的流类似,不过流是 阅读全文
posted @ 2016-04-09 22:08 风一样的码农 阅读(2181) 评论(0) 推荐(0) 编辑
摘要: 字节流InputStream/OutputStream 本篇将对JAVA I/O流中的字节流InputStream/OutputStream做个简单的概括: 总得来说,每个字节流类都有一个对应的用途,如下: ByteArrayInputStream/ByteArrayOutputStream //字 阅读全文
posted @ 2016-04-08 14:49 风一样的码农 阅读(2119) 评论(0) 推荐(0) 编辑
摘要: 偷个懒,直接参考上篇字符输入流Reader的形式,其实Reader和Writer本来就大同小异; 字符输出流Writer 本篇将对JAVA I/O流中的字符输出流Writer做个简单的概括: 总得来说,每个字符输出流类都有一个对应的用途,如下: 字符输出流基类:Writer 字节流转字符流:Outp 阅读全文
posted @ 2016-04-07 23:46 风一样的码农 阅读(2196) 评论(0) 推荐(0) 编辑
摘要: 字符输入流Reader组成结构 本篇将对JAVA I/O流中的字符输入流Reader做个简单的概括: 总得来说,每个字符输入流类都有一个对应的用途,如下: 字符流基类:Reader 字节流转字符流:InputStreamReader //读取字节输入流中的字符 字符文件读取相关:FileReader 阅读全文
posted @ 2016-04-07 17:40 风一样的码农 阅读(2578) 评论(0) 推荐(1) 编辑
摘要: 写在前面 同步工具类主要包括闭锁(如CountDownLatch),栅栏(如CyclicBarrier),信号量(如Semaphore)和阻塞队列(如LinkedBlockingQueue)等; 使用同步工具类可以协调线程的控制流; 同步工具类封装了一些状态,这些状态决定线程是继续执行还是等待,此外 阅读全文
posted @ 2016-04-06 11:45 风一样的码农 阅读(7779) 评论(1) 推荐(2) 编辑
摘要: AtomicInteger源码 在java.util.concurrent.atomic包下提供了大量的原子类,这里以AtomicInteger源码为例,添加了一些注释,个人理解,供参考; 其中比较重要的一个概念是CAS操作,现代CPU已广泛支持,在JDK的AtomicInteger类中是调用了Un 阅读全文
posted @ 2016-04-05 22:15 风一样的码农 阅读(2019) 评论(0) 推荐(0) 编辑
摘要: 同步容器类 同步容器类的创建 在早期的JDK中,有两种现成的实现,Vector和Hashtable,可以直接new对象获取; 在JDK1.2中,引入了同步封装类,可以由Collections.synchronizedXxxx等方法创建; 同步容器类的问题 同步容器类虽然都是线程安全的,但是在某些情况 阅读全文
posted @ 2016-04-05 15:17 风一样的码农 阅读(4769) 评论(2) 推荐(1) 编辑
摘要: String字符串是只读的,不可变的 查看String类的源码,可以发现String类是被final关键字修饰的; 另外还可以看下String类源码中的其它方法实现,随便举个可以修改String值的方法,如字符串拼接方法concat(String str),返回的是一个全新的String对象,而不是 阅读全文
posted @ 2016-03-31 11:21 风一样的码农 阅读(3810) 评论(2) 推荐(0) 编辑
摘要: 枚举 将一组有限集合创建为一种新的类型,集合里面的值可以作为程序组件使用; 枚举基本特性 以下代码是枚举的简单使用: 使用values方法返回enum实例的数组 使用ordinal方法返回每个enum实例的次序,从0开始 使用compareTo方法比较两个enum实例 使用==来比较enum实例 使 阅读全文
posted @ 2016-03-29 22:42 风一样的码农 阅读(3315) 评论(0) 推荐(1) 编辑
上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 23 下一页