舒哥的blog

www.6aiq.com AIQ-机器学习大数据技术社区 全国最专业的机器学习大数据技术社区。全国IT精英群号:467123855...

深入剖析JDK动态代理源码实现

动态代理、静态代理优缺点优点:业务类只需要关注业务逻辑本身,保证了业务类的重用性。这是代理的共有优点。动态代理只有在用到被代理对象的时候才会对被代理类进行类加载。 而静态代理在编译器就已经开始占内存了。。 缺点: 1)代理对象的一个接口只服务于一种类型的对象,如果要代理的方法很多,势必要为...

2017-03-30 14:18:37

阅读数:849

评论数:1

select、poll、epoll、同步、异步之间的区别总结[整理]

select,poll,epoll都是IO多路复用的机制。I/O多路复用就通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。但select,poll,epoll本质上都是同步I/O,因为他们都需要在读写事件就绪后自己负责进行读写,也就是...

2017-03-24 13:08:58

阅读数:1941

评论数:1

Java 多线程拷贝文件夹并调用tinyPng算法接口压缩图片实现(生产消费变种)

线程模型 生产者Provider线程为一,主要进行深搜目录文件;、 消费者Consumer线程多个, 因为RPC服务调用时延较长, 启用多个线程请求服务。 持久化线程Persist 将已经消费的消息存放在writeQueue, 启用一个线程从writeQueue取数据进行持久化到log.pic,这...

2017-03-22 21:08:22

阅读数:720

评论数:0

JDK 8 之 Stream sorted() 示例

原文链接:http://www.concretepage.com/java/jdk-8/java-8-stream-sorted-example 国外对Java8一系列总结的不错, 翻译过来给大家共享 这篇文章将会讲解Java 8 Stream sorted()示例, 我们能够以自然序或着用C...

2017-03-19 17:34:26

阅读数:18179

评论数:1

深入剖析ReentrantLock公平锁与非公平锁源码实现

本文以公平与非公平锁的加锁缩成为主线,分析整个加锁过程。准备知识简介ReentrantLock类图: NonfairSync继承关系: Node结点:作为获取锁失败线程的包装类, 组合了Thread引用, 实现为FIFO双向队列。 下图为Node结点的属性描述 锁...

2017-03-19 15:29:40

阅读数:3126

评论数:0

JDK IO中的适配器模式和装饰者模式

适配器模式类图如下: Target表示目标接口, 也就是客户端认可的标准接口, 只有符合target接口规范的类(实现了target接口),才能为Client工作。 Adaptee表示需要适配的类, 这个类的特征是没实现target接口, 不符合标准, 但是它却提供了一些特殊功能, 还想被Clie...

2017-03-18 15:24:21

阅读数:1403

评论数:0

深入分析wait/notify为什么要在同步块内

public class WaitNotifyCase { public static void main(String[] args) { // final Object lock = new Object(); final Lock lock = new ...

2017-03-13 11:28:51

阅读数:1529

评论数:0

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