熊猫猫

恋恋不忘 必有回响

排序:
默认
按更新时间
按访问量

代码生成rapid-generator源码分析

原理 rapid-generator rapidDemo 假设有mysql数据库和表 修改generatorxml文件发在代码根目录就行生成代码会在classes目录加载配置文件主要是 模板文件 生成代码 rapid生成的代码文件 源码分析 常用类 加载配置文件 获取数据库元数据 构建输出模型和处...

2016-10-26 16:09:41

阅读数:3594

评论数:6

java-Date\Time\TimeStamp

之前用到的时候,有的地方会混淆,项目代码写完了,周五休息下,正好看看学习下。 java.util.Date 年月日时分秒; java.sql.Date 年月日,对应数据库Date; java.sql.Time 时分秒,对应数据库Time; java.sql.Timestamp 年月日时分秒毫秒,对...

2016-10-14 14:44:50

阅读数:536

评论数:0

JUC源码分析30-线程池-Exchanger

Demo 算法原理 结构 调用方法 exchange doExchange hashIndex createSlot await tryCancel spinWait 总结本想JUC最后一节写下Executors的,然后结束JUC。看了下代码,完全是一个工具类,哎,都是ThreadPoolExec...

2016-10-09 17:50:13

阅读数:440

评论数:0

JUC源码分析29-线程池-ScheduledThreadPoolExecutor

ScheduledExecutorService 基本结构和构造 流程 4个schedule调度 ScheduledFutureTask 接口的几个实现方法 DelayedWorkQueue第一次看到这个还是在netty源码中,可惜netty没有坚持看完,后来在工作中,原来公司框架的esb下发消息...

2016-09-27 17:03:04

阅读数:382

评论数:0

JUC源码分析28-线程池-ExecutorCompletionService

CompletionService 源码之前在看AbstractExecutorService的doInvokeAny()时看到这样的代码:ExecutorCompletionService<T> ecs = new ExecutorCompletionService<T...

2016-09-12 15:16:09

阅读数:244

评论数:0

JUC源码分析27-线程池-FutureTask

结构 核心方法 run cancel get awaitDone 其他方法 总结 参考在前一篇ThreadPoolExecutor学习时,在AbstractExecutorService代码重看到submit一个任务时,利用FutureTask的来封装提交的任务。这也应该是FutureTask最正...

2016-09-12 10:08:00

阅读数:589

评论数:0

JUC源码分析26-线程池-ThreadPoolExecutor

功能说明 类图 预热 Executor ExecutorService AbstractExecutorService ThreadPoolExecutor 线程池状态 ThreadPoolExecutor大致结构 核心代码流程 execute addWorker Worker runWorker...

2016-08-29 17:14:41

阅读数:1395

评论数:3

JUC源码分析25-队列-LinkedTransferQueue

原理 TransferQueue LinkedTransferQueue结构-Node Node节点 Node节点源码 LinkedTransferQueue结构源码 核心方法 put-offer-add untimed poll-tryTransfer transfer-take 超时的poll...

2016-08-18 15:23:33

阅读数:1607

评论数:0

JUC源码分析24-队列-CopyOnWriteArrayList,CopyOnWriteArraySet

在看LinkedTransferQueue之前看个简单点的CopyOnWriteArrayList。CopyOnWriteArrayList还是比较简单的,内部结构只有一个数组和一把锁。采用写时加锁复制数组,所有的可变操作都在新数组上进行,读则是老数组,有点读写分离意思,比ArrayList都加锁...

2016-08-05 10:48:00

阅读数:332

评论数:0

无锁和无等待并发

原文参考:http://rethinkdb.com/blog/lock-free-vs-wait-free-concurrency/,之前看ConcurrentLinkedQueue看到wait-free的东西,百度看到这篇文章,文章比较短,翻译下练手。 有2种类型的非阻塞线程同步算法:无锁和无等...

2016-08-02 21:46:46

阅读数:749

评论数:0

JUC源码分析23-队列-ConcurrentLinkedQueue

之前看的队列大都是基于锁来实现阻塞,ConcurrentLinkedQueue采用wait-free算法来实现'无锁'的并发队列。wait-free算法之前没听说过,只听过lock-free,大牛解析说2中不同,具体看参考,有空后面翻译下。 ConcurrentLinkedQueue基于单向链表...

2016-08-01 17:38:32

阅读数:521

评论数:0

编译JDK源代码,开启Debug信息

看JUC源码的时候,想debug查看一些本地变量,不行,然后百度之,找到一个方法,仅此记录!百分百可以! 用Eclipse Debug,当跟踪进jdk api里时(比如javax.swing包里的类),无法查看某些local filed的值。这是因为jdk里的代码在打包时删除了一些用于调...

2016-07-29 11:39:22

阅读数:733

评论数:0

JUC源码分析22-队列-SynchronousQueue

SynchronousQueue是一种比较特殊的阻塞队列,不同于之前的阻塞队列,特点为: 1.每次put必须有take的存在,也就是说生产者将一个元素put传递给一个消费者,消费者不存在就put不成功; 2.内部没有容量来维持存放元素,所以size,迭代等一些方法没有意义; 3.使用cas操作,...

2016-07-26 17:06:44

阅读数:514

评论数:0

Eclipse 控制台中文乱码

一个坑跳了2次,记录下,eclipse中文在控制台打印乱码。run->run configurations->commons->GBK:

2016-07-21 17:29:03

阅读数:240

评论数:0

JUC源码分析21-队列-LinkedBlockingDeque

LinkedBlockingDeque基于双向链表实现的阻塞队列,根据构造传入的容量大小决定有界还是无界,默认不传的话,大小Integer.Max。 实现BlockingDequeue接口,这个接口继承BlockingQueue和Dequeue,看下接口方法: public interface...

2016-07-12 15:51:24

阅读数:790

评论数:0

JUC源码分析20-队列-DelayQueue

画个JUC阻塞队列的类关系图,之前都没在意,画一下感觉会清楚很多 DelayQueue是无界的阻塞队列,其特点是实现队列元素的延迟出队,通俗点说就是队列元素可以设置延迟时间,时间不到,就待在队列中,很有意思的东西,感觉跟redis设置过期时间一样。队列元素不容许添加null元素。Dela...

2016-07-11 18:03:04

阅读数:579

评论数:0

JUC源码分析19-队列-PriorityBlockingQueue

PriorityBlockingQueue是一个基于数组实现的线程安全的无界队列,原理和内部结构跟PriorityQueue基本一样,只是多了个线程安全。javadoc里面提到一句,1:理论上是无界的,所以添加元素可能导致outofmemoryerror;2.不容许添加null;3.添加的元素使用...

2016-07-08 18:49:02

阅读数:1681

评论数:0

JUC源码分析18-队列-LinkedBlockingQueue

LinkedBlockingQueue是基于单向链表实现的有界阻塞队列,队列元素遵循FIFO,LinkedBlockingQueue比基于数组的阻塞队列拥有更好的吞吐量,但是在大部分并发应用中,性能不如基于数组的队列。 和ArrayBlocingQueue一样继承AbstractQueue,实现...

2016-07-06 18:05:38

阅读数:392

评论数:0

JUC源码分析17-队列-ArrayBlockingQueue

看ArrayBlockingQueue的javadoc说明,简单翻译过来: 1.基于数组实现的有界阻塞队列,队列采用FIFO; 2.因为基于数组,所以队列创建后大小不能改变。线程在插入元素到一个满的队列时会阻塞,线程获取元素时,队列为空也会阻塞; 3.对于队列的生产和消费线程提供了公平非公平...

2016-07-06 14:33:05

阅读数:262

评论数:0

JUC源码分析16-集合-ConcurrentSkipListMap、ConcurrentSkipListSet

NBA这赛季结束,勇士可惜啊,谁能想到没拿到冠军,库昊也没成为真正的老大,lbl一战封神,所有口水留言都变成羡慕嫉妒恨,哎,我库啊,还是还是看书吧。 ConcurrentSkipListMap说实话,之前还真没注意过,还是看JUC才看到,利用skiplist跳表结构来实现一种有序的map,之前看...

2016-06-23 10:12:34

阅读数:2879

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭