关闭
当前搜索:

[置顶] 不积跬步无以至千里,不积小流无以成江海

君子曰:学不可以已。   青,取之于蓝,而青于蓝;冰,水为之,而寒于水。木直中绳,輮(煣)以为轮,其曲中规。虽有(又)槁暴(曝),不复挺者,輮(煣)使之然也。故木受绳则直,金就砺则利,君子博学而日参省乎己,则知明而行无过矣。   故不登高山,不知天之高也;不临深溪,不知地之厚也;不闻先王之遗言,不知学问之大也。干,越,夷,貉之子,生而同声,长而异俗,教使之然也。诗曰:「嗟尔君子,无恒安息。靖共...
阅读(300) 评论(0)

JVM - 3. Java对象创建那点事与内存布局

创建与分配方式 创建一个对象的方法有很多但在程序层面最终都指向了new。 通常创建一个对象会通过new指令,看是否能在常量池匹配到一个符号引用,再去检查是否有类加载,如果没有则进行类加载过程。 @@>>>符号引用 @@>>>类 正常来说创建一个都是堆上分配,但是在前面我们也说过因为JVM优化(逃逸分析),会有堆上分配的情况,具体看下面例子。 class A{ //User us...
阅读(39) 评论(0)

JVM - 2. java堆栈里面到底有什么

在虚拟机自动内存管理机制的帮助下, 不容易出现内存泄漏和内存溢出问题 不过, 也正是因为把内存控制的权力交给了Java虚拟机 如果不了解虚拟机是怎样使用内存的, 那么排查错误将会成为一项异常艰难的工作。 运行时数据区 Java虚拟机定义了若干种程序运行期间会使用到的运行时数据区,其中有一些会随着虚拟机启动而创建,随着虚拟机退出而销毁。还有一些则是与线程一一对应,他们的生命周期也随着...
阅读(83) 评论(0)

JVM - 1. Java虚拟机梗概,那些你不知道的VM

虚拟机梗概 JDK Java程序设计语言、 Java虚拟机、 Java API类库这三部分统称为JDK(Java Development Kit),JDK是用于支持Java程序开发的最小环境 JRE Java API类库中的JavaSE API子集、Java虚拟机这两部分统称为JRE(Java Runtime Environment),JRE是支持Java...
阅读(83) 评论(0)

JAVA虚拟机(JVM)及相关技术体系

JAVA虚拟机(JVM)及相关技术体系 JVM - 1. Java虚拟机梗概,那些你不知道的VM JVM - 2. java堆栈里面到底有什么 JVM - 3. Java对象创建那点事与内存布局 JVM - 4 更新中...  参考资料 《深入理解Java...
阅读(40) 评论(0)

Fork/Join的应用

Fork/Join JDK1.7开始提供的在JUC包下的并行任务框架。 在多核机器上有显著的效果,主要核心工作窃取  拥有工作窃取算法,空闲线程会帮助其他有任务的线程处理任务队列 应用概述 查询某个文件夹路径下容量最大的文件 常用方法: 1. 单线程依次遍历每层目录及文件,记录并对比文件大小     写法简单,效率不高 2.多线程线程池遍历每层目录及文件    线程...
阅读(37) 评论(0)

JAVA NIO 概述及例子

JAVA NIO 简单概述 异步非阻塞,基于Reactor模式为核心。 #将关注的事件注册到selector当事件发生selector会反馈事件给注册者# java 如何实现的selector Selector.open(); //打开多路复用器 //获取selector //通过源码可见线程安全且唯一 public static SelectorProvider provi...
阅读(87) 评论(0)

HTTPS握手过程与对称加密、非对称加密

前言 这篇文章完全是用processon画的,processon蛮方便的 正文...
阅读(309) 评论(0)

Java内存模型(JMM)

前言 拜读《深入理解JAVA内存模型》后提升了对JMM的更多理解。 在此文中进行一个偏白话总结归纳,当然也加入了一些自己的东西。 深入理解JAVA内存模型.pdf 下载 同步与并发 线程并发编程模型有那两个? 在我们多线程并发编程的时候,总会遇到为什么线程之间如何同步?线程之间如何通讯? 共享内存并发模型 顾名思义,共享内存模式,就是线程之间...
阅读(131) 评论(0)

JUC系列之模拟抢票(N人同时抢票,票不足系统补仓,N-M人继续抢票)

前言 10.1要去苏州玩。 9月初去携程买票,发现过几天才放票 现在可以预约抢票。 用户流程 : 选票 -> 选预约 -> 选抢票类型极速/快速/免费  -> 支付票价和抢票费用  -> 自动帮抢票 携程这个流程我猜测是(当然我没有做过和12306或什么票务接口对接的工作  )  记录用户选票类型和票信息,等放票的时候通过接口调用买票这个接口可能是多次提交或提交一次设定...
阅读(349) 评论(0)

JUC系列之CyclicBarrier/CountDownLatch/Semaphore

CyclicBarrier 同步屏障,如果有人问你如何让N个线程同时之行某件事,请告诉他CyclicBarrier 那么他是如何来确保这一点的呢? 通过await使所有线程进入barrier。当达到预设计数器或await timeout 条件时,所有await线程开始继续执行 结合场景来说,今天我们要去抢火车票。我们为了公平起见,告诉大家今天中午12点开始放票,大家都在12点以前进...
阅读(267) 评论(0)

(java)六种常见排序

源码下载  1.冒泡排序 package com.algorithm.sort; import com.algorithm.utils.Data; import com.algorithm.utils.DataType; import com.algorithm.utils.annotations.Alias; import com.algorithm.utils.annotatio...
阅读(138) 评论(0)

SpringMVC IOC DI接口版本管理(迭代版)

前言 之前写过一篇文章 SpringMVC 接口版本管理/IP访问控制/ANT打包发布到LINUX  后来总觉得其中DI,IOC管理没有贯彻下来,主要原因是以为中间用了反射,来对Controller进行调用,反射又脱离了spring动态代理的生态体系。 最近针对此方面做了一定的修改和调整。 如果对下面内容不理解请先看上面所述的文章 修订 Controller 请先打开上面所述文章的实例,...
阅读(332) 评论(2)

dubbox + springMVC

公告 Dubbo开源项目将得到官方重点维护,我们期待这个优秀的开源项目在未来持续保持活力,引领开源服务框架 Alibaba Dubbo Team 2017.07.31...
阅读(300) 评论(0)

java socket BIO (ServerSocket,Socket,多线程)

Java Socket 今天给同事写了一个socket bio的demo让他来测试用,顺便分享给大家,希望可以帮助正在学习和了解java bio的新人们 java.net.socket 是java中最基本的socket bio实现方式。 本例实现了多人互动广播 Server端 import java.io.BufferedReader; import java.io.IOExce...
阅读(152) 评论(0)

浅读java.util.Map及其实现类(五)

WeakHashMap与HashMap 强引用,弱引用,软引用,虚引用 PhantomReference 虚引用 SoftReference 软引用 WeakReference 弱引用...
阅读(155) 评论(0)

浅读java.util.Map及其实现类(四)

Provider RenderingHints SimpleBindings TabularDataSupport TreeMap UIDefaults WeakHashMap...
阅读(166) 评论(0)

浅读java.util.Map及其实现类(三)

ConcurrentHashMap源码分享解析 //CAS操作包含三个操作数——内存位置(V)、预期原值(A)和新值(B)。如果内存位置的值与预期原值相匹配, //那么处理器会自动将该位置值更新为新值。否则,处理器不做任何操作。无论哪种情况, //它都会在CAS指令之前返回该位置的值。CAS有效地说明了“我认为位置V应该包含值A;如果包含该值,则将B放到这个位置; //否则,不要更改该位置,只告诉我这个位置现在的值...
阅读(319) 评论(0)

浅读java.util.Map及其实现类(二)

AbstractMap* Attributes* AuthProvider* ConcurrentHashMap* ConcurrentSkipListMap* EnumMap* HashMap* Hashtable* IdentityHashMap* LinkedHashMap* PrinterStateReasons* Properties*...
阅读(311) 评论(0)

浅读java.util.Map及其实现类(一)

Map概述 & map java8 method & BigFunction/ Function...
阅读(469) 评论(0)
43条 共3页1 2 3 下一页 尾页